我正在尝试获取网站当前登录用户的 token 。但是,javascript无法为我带来值(value)。我认为这里有2个问题:
谢谢!
我的检索 token 的代码:
var Auth = firebase.auth()
var token = Auth.currentUser.getToken()
此屏幕快照可能会有所帮助:
最佳答案
根据documentation of firebase.User:getIdToken()
:
该方法返回一个promise,因为如果 token 过期,它可能需要往返Firebase服务器:
Auth.currentUser.getIdToken().then(data => console.log(data))
或更经典的JavaScript:Auth.currentUser.getIdToken().then(function(data) {
console.log(data)
});
日志输出:更新:要确保用户在获取 token 之前已登录,请在
onAuthStateChanged
listener中运行以上代码:firebase.auth().onAuthStateChanged(function(user) {
if (user) {
user.getIdToken().then(function(data) {
console.log(data)
});
}
});