Google Smartlock/Googleyolo 没有 return 保存密码

Google Smartlock/Googleyolo did not return saved password

根据文档(https://developers.google.com/identity/one-tap/web/retrieve-credentials),我们可以得到我们保存的密码,就像我们在Chrome.

上使用凭证管理API一样

我目前已经在我的浏览器中登录 Google。 我已尝试使用 googleyolo api,使用 .retrieve() 函数,如文档所述:

const retrievePromise = googleyolo.retrieve({
  supportedAuthMethods: [
    "https://accounts.google.com",
    "googleyolo://id-and-password"
  ],
  supportedIdTokenProviders: [
    {
      uri: "https://accounts.google.com",
      clientId: "*********-**********.apps.googleusercontent.com"
    }
  ]
}).then(res => console.log(res));

并且只有 return idToken,没有密码 returned。

但奇怪的是,当我尝试在 Chrome 上使用凭据管理 API 时,我保存的凭据弹出。

问题是, 1. 出了什么问题? 2. googleyolo 从哪里得到它的凭据列表?因为我查看了 https://passwords.google.com,并且我的凭据存在 3. 我应该如何 do/troubleshoot 获取我的密码凭据?

不确定 supportedAuthMethods 参数中的 "googleyolo://id-and-password" 是从哪里得到的。在您的 link 中,它明确表示仅支持 Google。

googleyolo 从您当前的浏览器获取用户列表。如果您有多个用户登录到一个 Google 帐户,您将获得更多用户。

当我实现Google登录时,我只是使用idtoken来确认用户的身份。调用 googleyolo 时没有 return 密码。

确认用户身份后,即可使用提供的方法登录。

useGoogleIdTokenForAuth(credential.idToken);

抱歉造成混淆,密码仅在支持凭据管理 API(库用于检索密码)的浏览器中可用。将更新文档以澄清这一点。