Class: RailsJwtAuth::Jwt::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_jwt_auth/jwt/request.rb

Instance Method Summary collapse

Constructor Details

#initialize(request) ⇒ Request

Returns a new instance of Request.



6
7
8
9
10
11
12
13
14
15
# File 'lib/rails_jwt_auth/jwt/request.rb', line 6

def initialize(request)
  return unless request.env['HTTP_AUTHORIZATION']
  @jwt = request.env['HTTP_AUTHORIZATION'].split.last

  begin
    @jwt_info = RailsJwtAuth::Jwt::Manager.decode(@jwt)
  rescue JWT::ExpiredSignature, JWT::VerificationError
    @jwt_info = false
  end
end

Instance Method Details

#auth_tokenObject



29
30
31
# File 'lib/rails_jwt_auth/jwt/request.rb', line 29

def auth_token
  payload ? payload['auth_token'] : nil
end

#headerObject



25
26
27
# File 'lib/rails_jwt_auth/jwt/request.rb', line 25

def header
  @jwt_info ? @jwt_info[1] : nil
end

#payloadObject



21
22
23
# File 'lib/rails_jwt_auth/jwt/request.rb', line 21

def payload
  @jwt_info ? @jwt_info[0] : nil
end

#valid?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/rails_jwt_auth/jwt/request.rb', line 17

def valid?
  @jwt && @jwt_info && RailsJwtAuth::Jwt::Manager.valid_payload?(payload)
end