Class: Userbin::Request::Middleware::SessionToken
- Inherits:
-
Faraday::Middleware
- Object
- Faraday::Middleware
- Userbin::Request::Middleware::SessionToken
- Defined in:
- lib/userbin/request.rb
Overview
Sends the active session token in a header, and extracts the returned session token and sets it locally.
Instance Method Summary collapse
Instance Method Details
#call(env) ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/userbin/request.rb', line 80 def call(env) userbin = RequestStore.store[:userbin] return @app.call(env) unless userbin # get the session token from our local store if userbin.session_token env[:request_headers]['X-Userbin-Session-Token'] = userbin.session_token.to_s end # call the API response = @app.call(env) # update the local store with the updated session token token = response.env.response_headers['x-userbin-set-session-token'] userbin.session_token = token if token response end |