node.js - 当前环境不支持指定的持久化类型firebase

标签 node.js firebase firebase-authentication

我收到这个错误。 “当前环境不支持指定的持久化类型。”我正在测试我的应用程序,发现当用户登录时,它在任何地方都登录了。所以我正在尝试使用 firebase 在 node.js express 上实现 session ,希望这能解决它。我的代码是这样的:

router.post("/login", function (req, res) {
email = req.body.email;
password = req.body.password;

firebase.auth().setPersistence(firebase.auth.Auth.Persistence.SESSION);
firebase.auth().signInWithEmailAndPassword(email, password).then(function () {
    var user = firebase.auth().currentUser;
    firebase.auth().onAuthStateChanged(function (user) {
        if (user) {

            res.redirect("/home");
        }
    });
});});

最佳答案

在 node.js 环境中仅支持 none 持久化(这是默认设置)。这样做的原因是因为在服务器环境中使用 Firebase Auth 客户端库时,您可能有多个用户登录并且您没有后端服务器上持久存在的 currentUser 的概念(这会导致一个用户破坏另一个)。只能在客户端修改 session 持久性。

关于node.js - 当前环境不支持指定的持久化类型firebase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45850962/

相关文章:

node.js - 找不到 bundle.js [Webpack]

firebase - Crashlytics/Firebase 中的搜索选项可以在其中按崩溃名称进行搜索?

javascript - ionic 6 谷歌帐户 Firebase

json - Node.js - 我可以在 Redis 中将可写流存储为 JSON 吗?

javascript - Next.js 上基于 NODE_ENV 的条件 url

javascript - 从 firebase 检索值时收到未定义的消息

reactjs - 登录后 React Route Firebase Auth Redirect

reactjs - 用户能否在 Chrome 中更改 Redux/Mobx 的值以获得对受限 View 的访问权限?

node.js - 在 Node Express 服务器上测试远程 IP 地址行为

android - 区分 firstore 中的首次查询快照和更改监听器