Class: UserAuth::Token
- Inherits:
-
Object
- Object
- UserAuth::Token
- Defined in:
- lib/user_auth/token.rb
Defined Under Namespace
Classes: ParseError
Instance Method Summary collapse
- #create(payload) ⇒ Object
-
#initialize(secret = ENV["JWT_SECRET_KEY"]) ⇒ Token
constructor
A new instance of Token.
- #parse(token) ⇒ Object
Constructor Details
#initialize(secret = ENV["JWT_SECRET_KEY"]) ⇒ Token
Returns a new instance of Token.
5 6 7 |
# File 'lib/user_auth/token.rb', line 5 def initialize(secret = ENV["JWT_SECRET_KEY"]) @secret = secret end |
Instance Method Details
#create(payload) ⇒ Object
9 10 11 |
# File 'lib/user_auth/token.rb', line 9 def create(payload) JWT.encode(payload, @secret, "HS512") end |
#parse(token) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/user_auth/token.rb', line 13 def parse(token) JWT.decode(token, @secret)[0] rescue JWT::ExpiredSignature raise ParseError.new("Token expired") rescue JWT::DecodeError raise ParseError.new("Invalid token") end |