Class: Sfdc::SignedRequest
- Inherits:
-
Object
- Object
- Sfdc::SignedRequest
- Defined in:
- lib/sfdc/signed_request.rb
Class Method Summary collapse
-
.decode(signed_request, client_secret) ⇒ Object
Public: Initializes and decodes the signed request.
Instance Method Summary collapse
-
#decode ⇒ Object
Public: Decode the signed request.
-
#initialize(signed_request, client_secret) ⇒ SignedRequest
constructor
A new instance of SignedRequest.
Constructor Details
#initialize(signed_request, client_secret) ⇒ SignedRequest
Returns a new instance of SignedRequest.
17 18 19 20 |
# File 'lib/sfdc/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/sfdc/signed_request.rb', line 13 def self.decode(signed_request, client_secret) new(signed_request, client_secret).decode end |
Instance Method Details
#decode ⇒ Object
Public: Decode the signed request.
Returns the parsed JSON context. Returns nil if the signed request is invalid.
26 27 28 29 |
# File 'lib/sfdc/signed_request.rb', line 26 def decode return nil if signature != hmac JSON.parse(Base64.decode64(payload)) end |