diff --git a/lib/omniauth/strategies/dropbox_oauth2.rb b/lib/omniauth/strategies/dropbox_oauth2.rb index f9d9b2d..dd17011 100644 --- a/lib/omniauth/strategies/dropbox_oauth2.rb +++ b/lib/omniauth/strategies/dropbox_oauth2.rb @@ -10,7 +10,7 @@ class DropboxOauth2 < OmniAuth::Strategies::OAuth2 :token_url => 'https://api.dropbox.com/oauth2/token' } - uid { raw_info['uid'] } + uid { raw_info['account_id'] } info do { @@ -25,7 +25,10 @@ class DropboxOauth2 < OmniAuth::Strategies::OAuth2 end def raw_info - conn = Faraday.new(:url => 'https://api.dropbox.com') do |faraday| + return @raw_info if defined?(@raw_info) + + url = options[:client_options][:site] + conn = Faraday.new(url: url) do |faraday| faraday.request :url_encoded # form-encode POST params faraday.response :logger # log requests to STDOUT faraday.adapter Faraday.default_adapter # make requests with Net::HTTP @@ -36,8 +39,8 @@ def raw_info req.headers['Authorization'] = "Bearer #{access_token.token}" req.body = "null" end - @raw_info ||= MultiJson.decode(response.body) - # @raw_info ||= MultiJson.decode(access_token.get('/2/users/get_current_account').body) + + @raw_info = MultiJson.decode(response.body) end def callback_url