gpt4 book ai didi

javascript - Firebase getIdToken 不起作用

转载 作者:行者123 更新时间:2023-12-01 14:58:48 29 4
gpt4 key购买 nike

我正在使用来自 javascript 客户端的 Firebase 身份验证进行测试,我正在尝试使用 retrieve id tokens on clients documentation 检索 idToken

我想我忘记了一些基本的东西。

用户使用 Google 登录

该代码只是我在其他帖子和文档中看到的。结果在评论中。

firebase.auth().onAuthStateChanged(function(user) {
if (user) {
console.log(user); // this is shown. Firebase user and provider data
console.log(user.uid); // Shown
firebase.auth().user.getIdToken().then(function(idToken) {
console.log(idToken+'--'); // Nothing happens. No errors and the function not continues
});
console.log(user.uid); // Nothing happens
}
})

谢谢

编辑:

如果我添加任何错误,也不会发生任何事情。例如,如果我添加一个警报,它会显示警报,但如果我有错误,例如 alter() 不会显示任何错误。添加了捕获,也没有
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
alter() // Nothing happens and the function stop
console.log(user); // this is shown. Firebase user and provider data
console.log(user.uid); // Shown
firebase.auth().user.getIdToken().then(function(idToken) {
console.log(idToken+'--'); // Nothing happens. No errors and the function not continues
}).catch(function(error) {
console.log(error+'--'); // Nothing
});
console.log(user.uid); // Nothing happens
}
})

最佳答案

firebase.auth().user没有 user在那一刻呢。您必须使用 user来自 firebase.auth().onAuthStateChanged直接这样:

firebase.auth().onAuthStateChanged(function(user) {
if (user) {
console.log(user); // It shows the Firebase user
console.log(firebase.auth().user); // It is still undefined
user.getIdToken().then(function(idToken) { // <------ Check this line
console.log(idToken); // It shows the Firebase token now
});
}
});

您只能使用 firebase.auth().userfirebase.auth().onAuthStateChanged 之后已完成并超出其范围,否则它将是未定义的。

关于javascript - Firebase getIdToken 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49722324/

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