javascript - Firebase 身份验证在 Safari 中不起作用

标签 javascript authentication firebase safari firebase-authentication

按照教程中的建议,我在网络应用中实现了 Firebase 身份验证:

function initApp() {
    firebase.auth().onAuthStateChanged(function(user) {
        if (user) {
            // User is signed in.
            } else {
                // No user is signed in.
                console.log("no user signed in");
            }
    });
}

window.onload = function() {
    initApp();
};

这在 Chrome 中完美运行。用户身份验证状态在多个网页中持续存在。我可以在一个页面上登录,并且用户个人资料在下一页上仍然可用。

但是这在 Safari 中不起作用,用户 firebase 用户对象就会消失。我尝试了各种解决方法,在登录后将用户对象存储在 cookie 或本地存储中,但都不起作用。如何才能在 Safari(和其他浏览器)上像在 Chrome 上一样工作?

最佳答案

我明白了。当我从 finder 本地存储加载网站时,没有保存身份验证状态(我不知道为什么),但是当我上传网站并从其 URL 访问它时,一切都按预期工作。

关于javascript - Firebase 身份验证在 Safari 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44234776/

相关文章:

javascript - 如何从功能标签的页面源代码中获取值?

java - 估计JSF页面中客户端和服务器之间的连接速度

javascript - Meteor - 选择元素选项加载函数始终返回未定义

javascript - 如何使用 webpack 请求 jquery

java - Java 中多个 Web 应用程序的单点登录

ios - 无法转换值问题 Swift iOS

Javascript:如何在 HTTP GET 中传递当前用户凭据以进行基本身份验证

ios - 从 firebase 存储加载图像文件夹

android - 在嵌套的 HashMap 上 Firestore 多个 whereEqualTo

android - 在 firebase 数据库 android 中选择 IN() 查询