Module: ClioClient::Authorization
- Included in:
- Session
- Defined in:
- lib/clio_client/authorization.rb
Instance Method Summary collapse
- #authorize_url(redirect_uri, state = nil) ⇒ Object
- #authorize_with_code(redirect_uri, code) ⇒ Object
- #authorized? ⇒ Boolean
Instance Method Details
#authorize_url(redirect_uri, state = nil) ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/clio_client/authorization.rb', line 6 def (redirect_uri, state = nil) params = { response_type: :code, client_id: self.client_id, redirect_uri: redirect_uri } params[:state] = state if state base_uri("/oauth/authorize", params).to_s end |
#authorize_with_code(redirect_uri, code) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/clio_client/authorization.rb', line 15 def (redirect_uri, code) params = { code: code, grant_type: "authorization_code", client_id: self.client_id, client_secret: self.client_secret, redirect_uri: redirect_uri } uri = base_uri("/oauth/token") req = Net::HTTP::Post.new(uri.request_uri) req.set_form_data params credentials = make_request(req, uri) self.access_token = credentials["access_token"] credentials end |
#authorized? ⇒ Boolean
30 31 32 33 34 35 36 37 |
# File 'lib/clio_client/authorization.rb', line 30 def begin get("/users/who_am_i") true rescue ClioClient::Unauthorized false end end |