abstractj
12/12/2012 - 2:21 PM

token_request_sample.rb

require 'rubygems'
require 'rack/oauth2'

client = Rack::OAuth2::Client.new(
  :identifier => YOUR_CLIENT_ID,
  :secret => YOUR_CLIENT_SECRET,
  :redirect_uri => YOUR_REDIRECT_URI, # only required for grant_type = :code
  :host => 'rack-oauth2-sample.heroku.com'
)

grant_type = :authorization_code

puts "## grant_type = :#{grant_type}"

case grant_type
when :client_credentials
  # Nothing to do
when :password
  client.resource_owner_credentials = YOUR_USERNAME, YOUR_PASSWORD
when :authorization_code
  client.authorization_code = YOUR_AUTHORIZATION_CODE
when :refresh_token
  client.refresh_token = YOUR_REFRESH_TOKEN_FOR_USER
end

begin
  p client.access_token!
rescue => e
  p e
end