Class: JWTear::Token
- Inherits:
-
Object
- Object
- JWTear::Token
- Includes:
- Helpers::Extensions::Print
- Defined in:
- lib/jwtear/token.rb
Instance Method Summary collapse
-
#generate(type, header:, payload:, key:) ⇒ JWS | JWE
generate An interface for JWS and JWE token generation operation.
-
#initialize ⇒ Token
constructor
A new instance of Token.
-
#parse(token) ⇒ JWS|JWE
parse An interface for JWS and JWE parse operation.
Methods included from Helpers::Extensions::Print
#print_bad, #print_error, #print_good, #print_h1, #print_h2, #print_h3, #print_status, #print_warning
Constructor Details
Instance Method Details
#generate(type, header:, payload:, key:) ⇒ JWS | JWE
generate
An interface for JWS and JWE token generation operation.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/jwtear/token.rb', line 45 def generate(type, header:, payload:, key:) case type when :jws @jws.generate_jws(header:header , payload:payload , key:key) when :jwe @jwe.generate_jwe(header:header , payload:payload , key:key) else print_error "Unknown type: #{type}" raise end rescue JSON::ParserError => e print_error "Unexpected Token." puts e. rescue Exception => e method = method(__method__) print_error "Unknown Exception: #{method.owner}##{method.name}" print_warning 'Please report the issue to: https://github.com/KINGSABRI/jwtear/issues'.underline puts e. exit! end |
#parse(token) ⇒ JWS|JWE
parse
An interface for JWS and JWE parse operation.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/jwtear/token.rb', line 18 def parse(token) token_segments = token.split('.').size if token_segments <= 3 # JWS @jws.parse(token) else # JWE @jwe.parse(token) end rescue Exception => e print_error "Unknown Exception: #{method(__method__).owner}" print_warning 'Please report the issue to: https://github.com/KINGSABRI/jwtear/issues'.underline puts e puts e.backtrace exit! end |