Class: Force::SignedRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/force/signed_request.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(signed_request, client_secret) ⇒ SignedRequest

Returns a new instance of SignedRequest.



17
18
19
20
# File 'lib/force/signed_request.rb', line 17

def initialize(signed_request, client_secret)
  @client_secret = client_secret
  split_components(signed_request)
end

Class Method Details

.decode(signed_request, client_secret) ⇒ Object

Public: Initializes and decodes the signed request

signed_request - The POST message containing the signed request from Salesforce. client_secret - The oauth client secret used to encrypt the signed request.

Returns the parsed JSON context.



13
14
15
# File 'lib/force/signed_request.rb', line 13

def self.decode(signed_request, client_secret)
  new(signed_request, client_secret).decode
end

Instance Method Details

#decodeObject

Public: Decode the signed request.

Returns the parsed JSON context. Returns nil if the signed request is invalid.



26
27
28
29
# File 'lib/force/signed_request.rb', line 26

def decode
  return nil if signature != hmac
  JSON.parse(Base64.decode64(payload))
end