Google API OAuth 客户端:客户端 ID 不允许本地主机

Google API OAuth Client: Localhost never allowed for client ID

我已遵循 this 指南,并多次重新访问该步骤,但看不出我在这里做错了什么(如果有的话)。

我尝试添加 http://localhosthttp://localhost:80,这是我的本地服务器 运行。

每当我尝试提示用户登录时,我都会遇到错误:

[GSI_LOGGER]: The given origin is not allowed for the given client ID.

我尝试使用链接文档中描述的 g_id_onload div 块进行提示,但我也尝试通过 JS API 触发提示,结果相同.这里的步骤不多,但我是否遗漏了一些明显的东西?是否出于某种奇怪的原因需要验证我的同意屏幕?我还以为只有一个上限呢?

如有任何帮助,我们将不胜感激!

更新: 我已经复制了下面的实现(使用与我之前使用的相同的凭据),这似乎有效。但显然不再是实现 One Tap 的受支持方法。我认为这表明 Google 端出了问题?

https://github.com/zapier/google-yolo-inline

更新 2: 我现在尝试部署到暂存环境,为此添加 URL 作为允许的来源。最后同样的错误。

您在进行本地测试时,是否在浏览器中使用了URL http://localhost/path?

如果您在 iframe 中显示一次点击,则该 iframe 的 URL 应该类似于 http://localhost/path.

您是否在 OAuth 客户端中请求了额外的范围?如果是,则需要验证。

发现问题,我的网站实例的引用策略设置为 no-referrer。将其设置为 no-referrer-when-downgrade 后,一键提示按预期显示。