Sha256: f6fca03ec794576ffa7135624ba48b3fb2c2e08bf0ceb54e95043a6a32189981
Contents?: true
Size: 1.4 KB
Versions: 2
Compression:
Stored size: 1.4 KB
Contents
module Pocket # Defines HTTP request methods module OAuth # Return URL for OAuth authorization def authorize_url(options={}) params = access_token_params.merge(options) params.delete(:consumer_key) # shouldn't be exposed publically # Pocket renames `code` to `request_token` for some reason in this call params[:request_token] ||= params.delete(:code) connection.build_url("/auth/authorize", params).to_s end # Return a Pocket code def get_code(options={}) params = access_token_params.merge(options) response = connection.post 'oauth/request', params results = Hash[URI.decode_www_form(response.body)] results['code'] end # Return an access token from authorization def get_access_token(code, options={}) params = access_token_params.merge(:code => code).merge(options) response = connection.post 'oauth/authorize', params results = Hash[URI.decode_www_form(response.body)] results['access_token'] end # Return result from authorization def get_result(code, options={}) params = access_token_params.merge(:code => code).merge(options) response = connection.post 'oauth/authorize', params Hash[URI.decode_www_form(response.body)] end private def access_token_params { :consumer_key => consumer_key, :redirect_uri => redirect_uri } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
pocket-ruby-0.0.9 | lib/pocket/oauth.rb |
pocket-ruby-0.0.8 | lib/pocket/oauth.rb |