我正在开发多页面应用程序,它使用firebase作为后端。 在firebase初始化后的每个页面上,我都有以下代码:
firebase.auth().signInAnonymously().catch(...);
firebase.auth().onAuthStateChanged(function(user)
{
if (user) {
// ...
} else {
// User is signed out.
// ...
}
// ...
});
匿名登录每位访客。
问题是,当用户导航到我的应用程序的另一个页面或在新选项卡中打开它,或者只刷新当前页面时 - 会生成新的匿名用户。
我可以使用客户端cookie来存储匿名用户ID,但是我以后如何(在页面刷新后)使用存储的匿名用户ID,以使用该ID登录用户?
答案 0 :(得分:3)
这是我的错, firebase默认在本地存储中存储匿名用户授权。
我的代码示例应该以这种方式重写才能正常工作:
firebase.auth().onAuthStateChanged(function(user)
{
if (user) {
// User is signed in
// ...
} else {
// User is signed out.
firebase.auth().signInAnonymously().catch(/*...*/);
}
// ...
});