Method: OAuth2::Client#get_token

Defined in:
lib/oauth2/client.rb

#get_token(params, access_token_opts = {}) ⇒ AccessToken

Initializes an AccessToken by making a request to the token endpoint

Parameters:

  • params (Hash)

    a Hash of params for the token endpoint

  • access (Hash)

    token options, to pass to the AccessToken object

Returns:

Raises:



121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/oauth2/client.rb', line 121

def get_token(params, access_token_opts={})
  opts = {:raise_errors => options[:raise_errors], :parse => params.delete(:parse)}
  if options[:token_method] == :post
    headers = params.delete(:headers)
    opts[:body] = params
    opts[:headers] =  {'Content-Type' => 'application/x-www-form-urlencoded'}
    opts[:headers].merge!(headers) if headers
  else
    opts[:params] = params
  end
  response = request(options[:token_method], token_url, opts)
  raise Error.new(response) if options[:raise_errors] && !(response.parsed.is_a?(Hash) && response.parsed['access_token'])
  AccessToken.from_hash(self, response.parsed.merge(access_token_opts))
end