Method: ActiveSupport::MessageVerifier#verified
- Defined in:
- lib/active_support/message_verifier.rb
#verified(message, **options) ⇒ Object
Decodes the signed message using the MessageVerifier
‘s secret.
verifier = ActiveSupport::MessageVerifier.new("secret")
= verifier.generate("signed message")
verifier.verified() # => "signed message"
Returns nil
if the message was not signed with the same secret.
other_verifier = ActiveSupport::MessageVerifier.new("different_secret")
other_verifier.verified() # => nil
Returns nil
if the message is not Base64-encoded.
= "f--46a0120593880c733a53b6dad75b42ddc1c8996d"
verifier.verified() # => nil
Raises any error raised while decoding the signed message.
= "test--dad7b06c94abba8d46a15fafaef56c327665d5ff"
verifier.verified() # => TypeError: incompatible marshal file format
Options
:purpose
-
The purpose that the message was generated with. If the purpose does not match,
verified
will returnnil
.= verifier.generate("hello", purpose: "greeting") verifier.verified(, purpose: "greeting") # => "hello" verifier.verified(, purpose: "chatting") # => nil verifier.verified() # => nil = verifier.generate("bye") verifier.verified() # => "bye" verifier.verified(, purpose: "greeting") # => nil
210 211 212 213 214 215 216 217 218 |
# File 'lib/active_support/message_verifier.rb', line 210 def verified(, **) catch_and_ignore :invalid_message_format do catch_and_raise :invalid_message_serialization do catch_and_ignore :invalid_message_content do (, **) end end end end |