This is Daum OAuth client API library for ruby.
Motivated by moomerman’s twitter_oauth gem (github.com/moomerman/twitter_oauth)
OAuth specs: oauth.net/core/1.0/
OAuth Introduction @ Daum DNA: apis.daum.net/oauth/
sudo gem install daum_oauth
Source code is available at github.com/thefron/daum_oauth
client = DaumOAuth::Client.new( :consumer_key => ‘YOUR_APP_CONSUMER_KEY’, :consumer_secret => ‘YOUR_APP_CONSUMER_SECRET’ ) request_token = client.request_token(:oauth_callback => ‘callback_url’) #:oauth_callback must be specified
request_token.authorize_url => apis.daum.net/oauth/authorize?oauth_token=TOKEN
In your application, make users redirect to the authorize_url(daum). Before redirection, store the request token and secret(usually in the session).Then users will authorize the application and be redirected to callback_url you’ve specified before.
Then in callback procedure,
access_token = client.authorize( request_token.token, request_token.secret, :oauth_verifier => params )
#For now, there’s no method for checking authorization’s validity. #At least, you can try this if your application makes use of yozm. client.yozm_authorized? => true
client.yozm_add ‘message here’ # sends a yozm message
Now if you can keep access_token(usually in the database) for this user, you won’t need re-authorize them next time. Just initialize a client instance with stored access_token when needed.
access_token = @user.access_token #assuming @user
client = DaumOAuth::Client.new( :consumer_key => ‘YOUR_APP_CONSUMER_KEY’, :consumer_secret => ‘YOUR_APP_CONSUMER_SECRET’, :token => access_token.token, :secret=> access_token.secret )
You are ready to access protected resource.