class OAuth::RequestToken

The RequestToken is used for the initial Request. This is normally created by the Consumer object.

Public Instance Methods

authenticate_url(params = nil) click to toggle source
# File lib/oauth/tokens/request_token.rb, line 13
def authenticate_url(params = nil)
  return nil if token.nil?

  params = (params || {}).merge(oauth_token: token)
  build_url(consumer.authenticate_url, params)
end
authorize_url(params = nil) click to toggle source

Generate an authorization URL for user authorization

# File lib/oauth/tokens/request_token.rb, line 6
def authorize_url(params = nil)
  return nil if token.nil?

  params = (params || {}).merge(oauth_token: token)
  build_url(consumer.authorize_url, params)
end
callback_confirmed?() click to toggle source
# File lib/oauth/tokens/request_token.rb, line 20
def callback_confirmed?
  params[:oauth_callback_confirmed] == "true"
end
get_access_token(options = {}, *arguments) click to toggle source

exchange for AccessToken on server

# File lib/oauth/tokens/request_token.rb, line 25
def get_access_token(options = {}, *arguments)
  response = consumer.token_request(consumer.http_method, (consumer.access_token_url? ? consumer.access_token_url : consumer.access_token_path), self, options, *arguments)
  OAuth::AccessToken.from_hash(consumer, response)
end

Protected Instance Methods

build_url(base_url, params) click to toggle source

construct an authorization or authentication url

# File lib/oauth/tokens/request_token.rb, line 33
def build_url(base_url, params)
  uri = URI.parse(base_url.to_s)
  queries = {}
  queries = Hash[URI.decode_www_form(uri.query)] if uri.query
  # TODO: doesn't handle array values correctly
  queries.merge!(params) if params
  uri.query = URI.encode_www_form(queries) unless queries.empty?
  uri.to_s
end