首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >不能使用持久的Google身份验证(Firebase)

不能使用持久的Google身份验证(Firebase)
EN

Stack Overflow用户
提问于 2019-05-23 07:25:30
回答 1查看 143关注 0票数 1

我正在尝试使用Firebase进行持久的Google身份验证。我可以成功登录,但如果我重新加载页面,会话将不会持续。

下面是我的代码:

代码语言:javascript
复制
firebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL)
.then(function()
{
    let provider = new firebase.auth.GoogleAuthProvider();
    firebase.auth().signInWithPopup(provider)
    .then(function (result)
    {
        //Save auth data
    });
})
.catch(function(error)
{
    console.error(error);
});

这基本上就是文档中所写的内容,应该非常简单。我真的不知道我错过了什么。

此外,我不知道当会话是永久会话时会发生什么,它只会静默地进行身份验证,还是会打开弹出窗口,进行身份验证,然后自动关闭弹出窗口?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-23 08:03:40

登录状态会自动保存到浏览器的本地存储中,并在页面/应用程序重新加载时恢复。要检测身份验证状态的更改,请使用here所示的onAuthStateChanged侦听器

用户firebase.auth().onAuthStateChanged(function(user) { if (

){ //用户已登录。}否则{ //没有用户登录。} });

此侦听器将在用户主动登录时(即,当对signInWithPopup的调用完成时)以及在重新加载应用程序/页面后用户登录状态恢复时触发。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56266211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档