【发布时间】:2018-03-10 06:54:45
【问题描述】:
我刚开始学习 node、express 和 Firebase,经过深入研究,我决定放弃 express 的 express-session API 并使用 Firebase 的身份验证系统。
我正在尝试构建一个简单的应用程序,该应用程序可以使用 express 处理多个用户登录,但我不知道何时何地使用 Firebase 功能。我知道我需要在客户端进行某种会话,但我不确定如何实现它。
以下是我希望我的应用执行的操作:
- 使用用户凭据登录
- 将用户信息存储在会话对象中
- 重定向到仪表板
- 从会话对象中检索用户详细信息
这是我目前所拥有的:
app.post('/login', (req, res, next) => {
firebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL)
.then(function() {
firebase.auth().signInWithEmailAndPassword(req.body.email, req.body.password).then((user) => {
res.redirect('/dashboard');
})
.catch((err) => {
res.send(err);
});
})
.catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
console.log(errorMessage);
});
});
我已阅读有关 Admin SDK、authChange、令牌和客户端 SDK 的信息。我在这方面完全是新手,我对所有信息感到震惊。我觉得我缺少一个 onAuthChange 语句,但我不确定该放在哪里。这也是一个测试噩梦,因为我的本地服务器在我使用持久性时返回错误。
如何在 Express 中使用类似会话的对象?我需要实施什么来确保多个用户可以同时使用我的应用?
【问题讨论】:
标签: firebase express firebase-authentication