instance method token_and_options

Ruby on Rails 3.0.20

Since v3.0.20

Available in: v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

token_and_options(request)

Parses the token and options out of the token authorization header. If the header looks like this:

Authorization: Token token="abc", nonce="def"

Then the returned token is “abc”, and the options is {:nonce => “def”}

request - ActionController::Request instance with the current headers.

Returns an Array of [String, Hash] if a token is present. Returns nil if no token is found.

Parameters

request req
Source
# File actionpack/lib/action_controller/metal/http_authentication.rb, line 419
      def token_and_options(request)
        if header = request.authorization.to_s[/^Token (.*)/]
          values = $1.split(',').
            inject({}) do |memo, value|
              value.strip!                      # remove any spaces between commas and values
              key, value = value.split(/\=\"?/) # split key=value pairs
              value.chomp!('"')                 # chomp trailing " in value
              value.gsub!(/\\\"/, '"')          # unescape remaining quotes
              memo.update(key => value)
            end
          [values.delete("token"), values.with_indifferent_access]
        end
      end

Defined in actionpack/lib/action_controller/metal/http_authentication.rb line 419 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActionController::HttpAuthentication::Token

Type at least 2 characters to search.

↑↓ navigate · open · esc close