gpt4 book ai didi

javascript - firebase reauthenticateAndRetrieveDataWithCredential facebook 用户凭证

转载 作者:行者123 更新时间:2023-11-30 19:46:35 25 4
gpt4 key购买 nike

我正在尝试编写一个函数来重新验证使用 facebook 帐户登录的 firebase 用户。对于电子邮件,我根据电子邮件和密码创建凭据,但使用 Facebook 时,不会为该用户存储密码。我试图在文档中找到它,但找不到

 let user = firebase.auth().currentUser;
let credential = '';

//User created with Email
if(user.providerData[0].providerId === "password") {
credential = firebase.auth.EmailAuthProvider.credential(
user.email,
this.state.password
);
}

//User created with Facebook
if(user.providerData[0].providerId === "facebook.com") {
credential = firebase.auth.FacebookAuthProvider.credential(
? // <= User Email, Token
)
}
user.reauthenticateAndRetrieveDataWithCredential(credential).then(function(){
user.delete().then(function() {
}).catch(function(error) {
console.log(error)
}
}).catch((error) => {
console.log(error)
}

最佳答案

基于 FacebookAuthProvider.credential() 签名,您将需要 OAuth token /accessToken 来创建凭证。

可以在用户登录时提取accessToken:

firebase.auth().signInWithPopup(provider).then(function(result) {
// This gives you a Facebook Access Token. You can use it to access the Facebook API.
var token = result.credential.accessToken;
// The signed-in user info.
var user = result.user;
// ...
})

示例摘自https://firebase.google.com/docs/auth/web/facebook-login您可以在哪里找到有关此的更多信息。

关于javascript - firebase reauthenticateAndRetrieveDataWithCredential facebook 用户凭证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54873601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com