我正在使用“Google Spread Sheet API”从Google云端硬盘获取数据。 有时它会显示以下错误。但是一旦我清除了会话并再次重新加载页面,它就能正常运行。
'Fatalerror:'
Uncaughtexception'Google_Service_Exception'withmessage
{
"error":
{
"code":
401, "message":
"Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "errors":
[{
"message":
"Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "domain":
"global", "reason":
"unauthorized"
}], "status":
"UNAUTHENTICATED"
}
}
答案 0 :(得分:1)
您可能需要查看有关Verify the integrity of the ID token的文档:
如果您使用与后端服务器通信的应用或网站进行Google登录,则可能需要识别服务器上当前登录的用户。为安全起见,在用户成功登录后,使用HTTPS将用户的ID令牌发送到您的服务器。然后,在服务器上验证ID令牌的完整性,并从ID令牌的子声明中检索用户的ID。您可以使用以这种方式传输的用户ID来安全地识别后端上当前登录的用户。
在相关的SO post中,他们会显示document,以便最好地解释如何正确处理401:无效的凭据问题。
您可以为您的平台使用Google API客户端库,也可以调用
tokeninfo
验证端点,而不是编写自己的代码来执行这些验证步骤。
希望这有帮助。