Firebase身份验证服务器端

时间:2020-01-13 22:55:29

标签: javascript firebase session firebase-authentication

我正在尝试学习如何制作简单的身份验证应用程序。如果我的app.js文件中有此文件,

var logIn = function(req, res) {
  const email = req.body.email;
  const password = req.body.password;
  firebase.auth().signInWithEmailAndPassword(email, password).then(function() {
    const user = firebase.auth().currentUser;
    const emailVerified = user.emailVerified;
    console.log("Email verified status: " + emailVerified);
 });
};
var doSomething(req, res) {
  var user = firebase.auth().currentUser;
  // do something with the variable user
}

这不行吧?因为当多个用户登录时,currentUser只会分配给最后一个登录的人。(如果不正确,请更正我。)

所以,我发现了这些:

How to authenticate a firebase user from server without client side auth?

https://firebase.google.com/docs/auth/web/auth-state-persistence

他们建议这样做:

firebase.auth().setPersistence(firebase.auth.Auth.Persistence.NONE)
.then(function() {
  return firebase.auth().signInWithRedirect(provider);
});

这是否意味着添加setPersistence = None允许我们即使在多个用户登录的情况下,也可以在服务器端(即app.js中)使用firebase.auth().currentUser

我们可以只在app.js文件中声明一次firebase.auth().setPersistence(firebase.auth.Auth.Persistence.NONE)还是对每个函数使用Promise?

我最近开始学习JS和使用Firebase。抱歉,有些问题很傻。非常感谢您的帮助。

0 个答案:

没有答案