Class: ZeusSdk::V1::AuthJWT

Inherits:
Object
  • Object
show all
Defined in:
lib/zeus_sdk/v1/auth.rb

Class Method Summary collapse

Class Method Details

.decode(token, key) ⇒ Object



245
246
247
248
249
250
# File 'lib/zeus_sdk/v1/auth.rb', line 245

def decode(token, key)
    body = JWT.decode(token, key, true, { algorithm: 'HS256' })[0]
    HashWithIndifferentAccess.new body
rescue
    nil
end

.encode(data, key, exp = 6.months.from_now) ⇒ Object



237
238
239
240
241
242
243
# File 'lib/zeus_sdk/v1/auth.rb', line 237

def encode(data, key, exp = 6.months.from_now)
    payload = {
        data: data,
        exp: exp.to_i
    }
    JWT.encode(payload, key, 'HS256')
end