【发布时间】:2012-09-19 03:21:59
【问题描述】:
我已经按照这里的代码 - > https://github.com/jaredhanson/passport-local/tree/master/examples/express3 为用户添加本地身份验证。
问题是当我尝试添加用户时,
所以我创建了这条路线
app.get('/signup', function(req,res){
res.render('/signup');
});
app.post('/signup', function(req,res){
var body = req.body;
users.push(body);
res.redirect('/');
});
然后页面是表单
form(method='POST', action='/signup')
input(type='text', name='username', placeholder='username')
input(type='text', name='password', placeholder='password')
button.btn Register
虚拟数据库就是例子中的那个
users = [
{id:1, username: 'test', password:'papapa'}
];
所以当我通过表单发送信息时,一切正常,但是当我尝试使用新创建的用户登录时,告诉我“错误:无法将用户序列化到会话中”
serializeUser 是这个
passport.serializeUser(function(user, done) {
done(null, user.id);
});
passport.deserializeUser(function(id, done) {
findById(id, function (err, user) {
done(err, user);
});
});
【问题讨论】:
标签: database node.js authentication express passport.js