Google analytics Google API(分析)访问令牌并刷新新帐户上的令牌错误

Google analytics Google API(分析)访问令牌并刷新新帐户上的令牌错误,google-analytics,google-api,google-analytics-api,google-analytics-firebase,Google Analytics,Google Api,Google Analytics Api,Google Analytics Firebase,我在使用Google API中存储的刷新令牌授予新的访问令牌时遇到问题 我们的注册流程保证只有一个帐户与我们的客户授权。当使用我控制的Google帐户进行本地测试时,我会收到一个持久存储的access_令牌和refresh_令牌。access_令牌用于在到期之前检索必要的数据。如果在此之后的任何时间尝试刷新此访问\u令牌,我将收到一个“无效的\u授权”“令牌已过期或被吊销。”。我可以通过管理面板验证该帐户是否仍然具有访问权限。我的刷新帖子如下所示: POST /oauth2/v4/token H

我在使用Google API中存储的刷新令牌授予新的访问令牌时遇到问题

我们的注册流程保证只有一个帐户与我们的客户授权。当使用我控制的Google帐户进行本地测试时,我会收到一个持久存储的access_令牌和refresh_令牌。access_令牌用于在到期之前检索必要的数据。如果在此之后的任何时间尝试刷新此访问\u令牌,我将收到一个“无效的\u授权”“令牌已过期或被吊销。”。我可以通过管理面板验证该帐户是否仍然具有访问权限。我的刷新帖子如下所示:

POST /oauth2/v4/token HTTP/1.1
Host: www.googleapis.com
Content-Type: application/x-www-form-urlencoded

client_id=[MY_CLIENT_ID.apps.googleusercontent.com]&client_secret=[MY_CLIENT_SECRET]&refresh_token=[USER'S_REFRESH_TOKEN]&grant_type=refresh_token
点击此端点以验证访问令牌:

GET /oauth2/v3/tokeninfo?access_token=[USER'S_ACCESS_TOKEN] HTTP/1.1
Host: www.googleapis.com
如果访问令牌未过期,则生成信息,但在其过期后,我将收到预期的400“无效值”

由于我一直在手动测试refresh_token POST,我不认为谷歌方面会有什么阻碍

我已验证在注册过程中我们是否可以访问\u type:脱机。我能够在初始访问令牌期间获得所有请求的数据,这使我相信我们想要访问的数据的权限是正确的


我在这里遗漏了什么?

我怀疑您的问题在于未完成刷新令牌的数量

当用户对您的应用程序进行身份验证时,您正在提供刷新令牌。如果用户再次验证您的应用程序,您将获得另一个刷新令牌。这两种代币都将继续工作

你可以这样做多达50次,然后第一个将停止工作。因此,请确保始终将刷新令牌保存到数据库中

选择2

检查机器上的时钟,确保与NTP同步

选择三


撤销刷新令牌并再次请求访问权限用户可能已撤销您的访问权限。

嘿,谢谢您的评论。我可以验证在对用户进行身份验证时,是否将新的刷新令牌持久化到数据库中。事实上,当我对我的测试帐户进行身份验证时,抓取第一次身份验证期间发生的刷新,我在刷新时仍然会收到一个无效的\u grant错误。好的,我又添加了两个选项,这是一个很难确定的错误。我知道用户没有撤销,因为我控制了测试帐户,并且可以在管理面板中看到应用程序。我的macbook与苹果服务器正确同步,但我无法告诉你如何查看苹果与谷歌服务器之间的同步状态。对于这个问题,我遵循了大多数堆栈溢出的答案,似乎没有一个能为我解决这个问题。感谢您提供更多选项。