自动“继续为”Google 弹出窗口的文档

Posted

技术标签:

【中文标题】自动“继续为”Google 弹出窗口的文档【英文标题】:Documentation for the automatic "Continue as" Google popup 【发布时间】:2019-04-03 00:32:18 【问题描述】:

如何在我的网站上获得自动“使用 Google 登录”框架之一?例如,如果您登录帐户并访问 Kayak.com,就会发生这种情况。任何documentation I come across 都用于较旧的“使用 Google 登录”按钮。

这就是访问 Kayak.com 的样子。

【问题讨论】:

相关:How to disable pop-ups for Google “YOLO” / “One-Tap Sign-Up”? 【参考方案1】:

编辑(2020 年 10 月 29 日):

第一个链接现在又可以工作了(正如@ManSamVampire 指出的那样):

https://developers.google.com/identity/one-tap/web

编辑(2019 年 11 月 9 日):

现在链接似乎指向 404。我找不到任何有关 One Tap 登录消失的信息。

原答案:

我有同样的问题,发现了这个(我用谷歌搜索了“谷歌自动登录”):

https://developers.google.com/identity/one-tap/web/

他们的屏幕截图是针对移动设备的,但弹出窗口看起来与您在其他网络应用上看到的完全一样。

如果您单击 Guides 选项卡,您应该会在那里找到一些文档,包括 Getting Started 部分:

https://developers.google.com/identity/one-tap/web/get-started

这将向您展示如何像设置任何其他 Google API(例如 Maps JavaScript API)一样设置凭据。

获得凭据后,您可以在主 html 文件或加载其他脚本的任何位置从 Google 加载库(如果有):

<script src="https://smartlock.google.com/client"></script>

然后您应该能够通过 googleyolo 对象访问该库:

window.onGoogleYoloLoad = (googleyolo) => 
  // The 'googleyolo' object is ready for use.
;

您在该屏幕截图中看到的(以及我也看到的)看起来是一个googleyolo.hint() 调用。

这似乎取决于用户是否已经登录该站点。如果他们有或如果他们在浏览器中保存了该网站的密码,那么它应该自动登录或至少提示输入密码。除了使用前面提到的googleyolo.hint() 调用的登录之外,此 API 还处理注册。

可以在指南页面上找到更详细的代码示例。

您还需要控制此站点的后端,以通过成功的 googleyolo.hint()googleyolo.retrieve() 调用验证 ID 令牌 的完整性。 https://developers.google.com/identity/one-tap/web/idtoken-auth 对此进行了介绍。

【讨论】:

您可以尝试举例说明其工作原理,而不是简单地发布链接。 感谢您的建议!我可以看到我的回答有点懒惰,所以我添加了更多细节。但是,最好的示例可以在提供的文档链接中找到。 OP 没有提供有关其站点环境的详细信息,并且给出的示例与我认为多余的文档中的示例不会有太大差异。此外,问题的措辞使 OP 似乎只需要帮助查找 API 文档的位置,因为我也很难找到文档。 第一个链接现在又可以工作了。入门页面现已移除,但 Guides 选项卡现在可在 Get started 部分下打开 first page。此外,ID 令牌验证文档现已移至 this page。请相应地更新答案。 如何在 Web 应用程序的 ASP.NET Core + Identity 中实现?

以上是关于自动“继续为”Google 弹出窗口的文档的主要内容,如果未能解决你的问题,请参考以下文章

Firebase 登录弹出窗口在 Heroku 上自动关闭

delphi7怎么弹出子窗口

latex 中用\cite引用文献为啥不能自动弹出窗口

HTML窗口弹出代码

请求 Google 日历权限时弹出额外授权

弹出窗口的 Google Play 游戏服务视图