刷新令牌,提供无效授权

时间:2014-09-09 23:06:03

标签: google-oauth

我遇到了Google OAuth的单个用户刷新工作流程的问题。我正确地确定了离线访问并存储了它。每隔60分钟,在需要时,我会检索一个新的access_token。代码没有改变,但奇怪的是,当他第一次完成授权过程时,它工作了大约3天。然后我们运行了这个问题,所以我让他撤销访问权限并再次通过授权。这只持续了3天。

client_id       ="xxxxx.apps.googleusercontent.com"
client_secret   ="yyyyyyyy"
refresh_token   ="zzzzzzzz"
response        = oauth2a.RefreshToken(client_id,client_secret,refresh_token)

def RefreshToken(client_id, client_secret, refresh_token):
  params = {}
  params['client_id'] = client_id
  params['client_secret'] = client_secret
  params['refresh_token'] = refresh_token
  params['grant_type'] = 'refresh_token'
  request_url = AccountsUrl('o/oauth2/token')

  response = urllib.urlopen(request_url, urllib.urlencode(params)).read()
  return json.loads(response)

回复始终是{u'错误':u' invalid_grant'}。我曾尝试在三台不同的机器上进行此操作,因此NTP时间同步也不是问题。所有其他用户的刷新工作正常。我也从不再要求刷新,所以我知道我没有遇到25个refresh_token限制。这看起来像是gmail方面的一个错误,有什么方法可以继续尝试解决这个问题吗?

0 个答案:

没有答案