class JWT::Claims::Numeric

The numeric claims are: exp, iat and nbf
The Numeric class is responsible for validating numeric claims in a JWT token.

def validate_is_numeric(payload, claim)

def validate_is_numeric(payload, claim)
  return unless payload.is_a?(Hash)
  return unless payload.key?(claim) ||
                payload.key?(claim.to_s)
  return if payload[claim].is_a?(::Numeric) || payload[claim.to_s].is_a?(::Numeric)
  raise InvalidPayload, "#{claim} claim must be a Numeric value but it is a #{(payload[claim] || payload[claim.to_s]).class}"
end

def validate_numeric_claims(payload)

def validate_numeric_claims(payload)
  NUMERIC_CLAIMS.each do |claim|
    validate_is_numeric(payload, claim)
  end
end

def verify!(context:)

Returns:
  • (nil) -

Raises:
  • (JWT::InvalidClaimError) - if any numeric claim is invalid.

Parameters:
  • context (Object) -- the context containing the JWT payload.
def verify!(context:)
  validate_numeric_claims(context.payload)
end