class JWTea::Token::Payload

Attributes

data[R]
exp[R]
iat[R]
jti[R]

Public Class Methods

from_hash(payload_hash) click to toggle source
# File lib/jwtea/token/payload.rb, line 10
def from_hash(payload_hash)
  new(payload_hash.transform_keys(&:to_sym))
end
new(data:, exp:, iat: nil, jti: nil) click to toggle source
# File lib/jwtea/token/payload.rb, line 15
def initialize(data:, exp:, iat: nil, jti: nil)
  @data = data
  @exp = exp
  @iat = iat || Time.current.to_i
  @jti = jti || Digest::MD5.hexdigest([SecureRandom.hex, @iat].join(':'))
end

Public Instance Methods

to_h() click to toggle source
# File lib/jwtea/token/payload.rb, line 22
def to_h
  {
    'data' => @data,
    'jti' => @jti,
    'iat' => @iat,
    'exp' => @exp,
  }
end