我正在尝试使用我的值设置 config.php,但我收到了这个致命错误:
致命错误:未捕获的异常“Google_AuthException”带有消息“获取 OAuth2 访问令牌时出错,消息:'invalid_grant'。
我输入了客户端 ID、秘密、简单 API 密钥、位置和 sqlite 数据库,如文档所述: https ://developers.google.com/glass/quickstart/php
知道我做错了什么吗?
提前致谢!
我正在尝试使用我的值设置 config.php,但我收到了这个致命错误:
致命错误:未捕获的异常“Google_AuthException”带有消息“获取 OAuth2 访问令牌时出错,消息:'invalid_grant'。
我输入了客户端 ID、秘密、简单 API 密钥、位置和 sqlite 数据库,如文档所述: https ://developers.google.com/glass/quickstart/php
知道我做错了什么吗?
提前致谢!
当您托管 Glassware 的 URL 未在 API 控制台上列为有效的 OAuth 2.0 重定向 URI 时,就会发生这种情况。请按照以下步骤解决它。
http://localhost/mirror-quickstart-php/oauth2callback.php
. 如果您在 example.com 上运行它,它可能是https://example.com/oauth2callback.php
.如果您仍有问题,请在页面上分享完整的错误消息以及您在config.php
.
如果您收到invalid_grant
来自 Google 的错误:不要使用client ID
来自 google 开发者控制台的值作为client ID
代码中的值,而是尝试使用email address
来自开发者控制台的值。这实际上是他们所期望的。因此,要确认 - 的值Client ID
应该是开发者控制台结尾的值@developer.gserviceaccount.com
最近尝试连接到 DialogFlow Google Cloud Project 时,在 Windows PS dotnet 环境中遇到了类似的问题,这似乎是间歇性故障,但事实证明,$env:GOOGLE_APPLICATION_CREDENTIALS
在 Windows 中它是全局性的并且由于在 GCP Console 中重新生成了密钥
在生成新的密钥文件并使用新生成$env:GOOGLE_APPLICATION_CREDENTIALS="[Path_To_JSON_Key_File]"
的密钥文件设置它后,问题就消失了,但只要窗口打开,修复就会持续,然后在$env:GOOGLE_APPLICATION_CREDENTIALS
新打开的 PS 窗口上运行一段时间后发现它仍然指向旧的关键文件!
将系统环境变量设置GOOGLE_APPLICATION_CREDENTIALS
为固定值[Path_To_JSON_New_Key_File]
,所有新打开的 PS 窗口都具有正确的密钥文件并使用服务帐户正确验证,之后使用 .Net Google Cloud API 调用