Module: StraightServerKit

Defined in:
lib/straight-server-kit.rb,
lib/straight-server-kit/client.rb,
lib/straight-server-kit/version.rb,
lib/straight-server-kit/models/order.rb,
lib/straight-server-kit/models/api_error.rb,
lib/straight-server-kit/models/base_model.rb,
lib/straight-server-kit/resources/order_resource.rb

Defined Under Namespace

Classes: ApiError, BaseModel, Client, Order, OrderResource

Constant Summary collapse

VERSION =
'0.1.0'

Class Method Summary collapse

Class Method Details

.sign(content:, secret:, level: 1) ⇒ Object



21
22
23
24
25
26
27
28
# File 'lib/straight-server-kit.rb', line 21

def self.sign(content:, secret:, level: 1)
  return unless secret
  result = content.to_s
  level.times do
    result = OpenSSL::HMAC.hexdigest('sha256', secret.to_s, result)
  end
  result
end

.valid_callback?(params, secret) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
19
# File 'lib/straight-server-kit.rb', line 16

def self.valid_callback?(params, secret)
  return false unless params[:signature] && params[:order_id]
  sign(content: params[:order_id], secret: secret) == params[:signature]
end