如何使用Oauth2请求新令牌

时间:2015-12-16 11:38:47

标签: ruby-on-rails oauth-2.0 token

我使用refresh token作为他们的文档说明ExactOnline API请求来自Oauth2的访问令牌,但我得到Bad Request正在使用{{3}}向该API发送POST请求。我试过谷歌搜索,但没有给出的例子是有帮助的。

这是我到目前为止所做的。

     def to_params
      {
         'refresh_token' => refresh_token,
          'client_id' => CLIENT_ID,
          'client_secret' => CLIENT_SECRET,
          'grant_type' => 'refresh_token'
      }
  end

  def request_token_from_exact
    #Request a new token if the given token is expired.
    client = OAuth2::Client.new(self.to_params['client_id'], self.to_params['client_secret'], site: 'https://start.exactonline.nl')
    access_token = OAuth2::AccessToken.new(client, self.to_params['fresh_token'])
    @response = access_token.post('/api/oauth2/token')
    puts "Response Status: "+@response.status
  end

如何使用Oauth2获取新令牌。或者,如果给定的一个已经过期,我可以通过任何方式获得新的令牌。

您的回复将不胜感激。

1 个答案:

答案 0 :(得分:1)

在您的代码中替换 self.to_params['fresh_token'] self.to_params['refresh_token']此处