0

在Google One-Tap 登录的文档中,它说:

返回用户会自动登录,即使他们切换设备或平台,或者会话过期后也是如此。

问题1: 但它没有说明它是如何做到的?用户刷新令牌是否保存在浏览器的缓存中?然后如何跨设备自动登录用户?

问题 2:我问的原因是因为我有一个设置,我为 JavaScript (“GAPI”)初始化Google API 客户端。每当客户端通过gapi.client.init().

现在的问题是,在我添加了 Google One-Tap 代码(或者我应该说“YOLO 代码”?:) 之后,我的用户通过 One-Tap 和 GAPI 登录。我可以通过不初始化 GAPI 客户端来防止这种情况发生,但我认为这不明智,因为我认为整个库都是为了管理我的刷新令牌等而构建的。我的理解是否正确,One-Tap 完全一样,以防万一我只想验证用户我不再需要 GAPI 客户端?

真的,哪个库在管理我的刷新令牌方面做得更好?它们有何不同?我一无所知...

4

1 回答 1

1

我实现登录的方式如下:

  1. 尝试先使用 gapi.auth2 登录用户。也许用户之前已登录该站点。

  2. 如果无法自动登录用户,则使用 googleyolo 尝试查找现有用户帐户。

  3. 如果没有现有帐户,则显示一个登录按钮供用户登录。

如果你需要,我可以给你一些代码片段。

回答你的问题。

#1,凭证存储在浏览器/设备中。如果用户从未在设备上登录过 google,则 yolo 将无法登录该用户。

#2。googleyolo 也会登录用户,不同的是即使只有一个用户可供选择,它也会提供帐户选择器(如果只有一个用户,它将自动登录用户)。gapi 只需登录用户而不显示任何内容。

于 2018-02-25T04:32:48.400 回答