Sha256: efc520b475ac31201ee4d5b560c3e0112c1d45b633c05b9dae1f73853fe5bfc6
Contents?: true
Size: 1.07 KB
Versions: 5
Compression:
Stored size: 1.07 KB
Contents
require 'securecompare' module JSON module JOSE extend ActiveSupport::Concern included do extend ClassMethods include SecureCompare register_header_keys :alg, :jku, :jwk, :x5u, :x5t, :x5c, :kid, :typ, :cty, :crit alias_method :algorithm, :alg attr_accessor :header def header @header ||= {} end def content_type @content_type ||= 'application/jose' end end module ClassMethods def register_header_keys(*keys) keys.each do |header_key| define_method header_key do self.header[header_key] end define_method "#{header_key}=" do |value| self.header[header_key] = value end end end def decode(input, key_or_secret = nil) if input.is_a? Hash decode_json_serialized input, key_or_secret else decode_compact_serialized input, key_or_secret end rescue MultiJson::DecodeError raise JWT::InvalidFormat.new("Invalid JSON Format") end end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
json-jwt-1.6.1 | lib/json/jose.rb |
json-jwt-1.6.0 | lib/json/jose.rb |
json-jwt-1.5.2 | lib/json/jose.rb |
json-jwt-1.5.1 | lib/json/jose.rb |
json-jwt-1.5.0 | lib/json/jose.rb |