Sha256: adf7752e199faa7bb6c9c733de60687a9f3d94d61e3895447335c55d0e2eec6b
Contents?: true
Size: 1.32 KB
Versions: 2
Compression:
Stored size: 1.32 KB
Contents
module Freee module Util @@client = nil def self.create_params(**kwarg) { grant_type: 'authorization_code', code: kwarg[:authorization_code], redirect_uri: kwarg[:redirect_uri], headers: { 'Content-Type' => 'application/json', 'Authorization' => HTTPAuth::Basic.pack_authorization( kwarg[:client_id], kwarg[:secret_key] ) } } end def self.create_client(**kwarg) @@client = OAuth2::Client.new(kwarg[:client_id], kwarg[:secret_key], OPTIONS) do |con| con.request :url_encoded con.request :json con.response :json, content_type: /\bjson$/ con.adapter Faraday.default_adapter end end def self.create_token(**kwarg) self.create_client(kwarg) if @@client.nil? get_token = @@client.get_token(create_params(kwarg)) { token: get_token.token, refresh_token: get_token.refresh_token } end def self.refresh_token(**kwarg) self.create_client(kwarg) if @@client.nil? get_token = OAuth2::AccessToken.from_hash( @@client, refresh_token: kwarg[:refresh_token] ).refresh! { token: get_token.token, refresh_token: get_token.refresh_token } end extend self end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
freee-1.0.0 | lib/freee/util.rb |
freee-0.3.1 | lib/freee/util.rb |