我注意到 Google 已重新开放Google 一键登录和自动注册 https://developers.google.com/identity/one-tap/web由于安全问题而暂停后。
我一直在尝试了解如何使其与 Firebase Auth 一起使用,有人有任何想法吗?即使对它应该如何工作有一个高层次的看法也会很棒。
到目前为止,我已经成功创建了这个:
https://google-one-tap.brunocrosier.now.sh https://google-one-tap.brunocrosier.now.sh
到目前为止它做了什么:
- 显示一键提示
- 允许您点击“以 {name} 身份继续”
- 向 /api/google 发出 post 请求并验证 ID 令牌作为
按照这些说明 https://developers.google.com/identity/one-tap/web/guides/verify-google-id-token
- 以 JSON 格式输出数据
我的问题是,如何才能使用 Firebase Auth 来完成这项工作?我可以使用 #4 中输出的数据在 Firebase 中创建 Google 用户吗?
提前致谢!
一键式 Google 登录 (https://developers.google.com/identity/gsi/web https://developers.google.com/identity/gsi/web)
response通过回调直接到达您的函数一键脚本 https://developers.google.com/identity/gsi/web/guides/handle-credential-responses-js-functions.
火力地堡 8
let credential = firebase.auth.GoogleAuthProvider.credential(response.credential);
firebase.auth().signInWithCredential(credential).then(function(result) {
let user = result.user
console.log(user)
});
火力地堡 9
import { getAuth, GoogleAuthProvider, signInWithCredential } from "firebase/auth"
const yourAuth = getAuth(yourApp)
const credential = GoogleAuthProvider.credential(response.credential)
signInWithCredential(yourAuth, credential).then(function (result) {
const user = result.user
console.log(user)
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)