Sha256: 79eb817a6ecbfb9ffbdee9aee12d1fe702362ef6bb9ba281c56020e8bf4dd57d
Contents?: true
Size: 640 Bytes
Versions: 1
Compression:
Stored size: 640 Bytes
Contents
class ActiveStorage::VerifiedKeyWithExpiration class_attribute :verifier, default: defined?(Rails) ? Rails.application.message_verifier('ActiveStorage') : nil class << self def encode(key, expires_in: nil) verifier.generate([ key, expires_at(expires_in) ]) end def decode(encoded_key) key, expires_at = verifier.verified(encoded_key) key if key && fresh?(expires_at) end private def expires_at(expires_in) expires_in ? Time.now.utc.advance(seconds: expires_in) : nil end def fresh?(expires_at) expires_at.nil? || Time.now.utc < expires_at end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activestorage-0.1 | lib/active_storage/verified_key_with_expiration.rb |