Sha256: 346a0c9b3aa3b65faf4b4994349e5c6b126a8b8ccadb31153c87fc1396c29f34
Contents?: true
Size: 1.4 KB
Versions: 1
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 = URI.decode_www_form(response.body).to_h 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 = URI.decode_www_form(response.body).to_h 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) URI.decode_www_form(response.body).to_h end private def access_token_params { consumer_key: consumer_key, redirect_uri: redirect_uri } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pocket-ruby-0.6.0 | lib/pocket/oauth.rb |