我已经按照这里的代码进行了操作 - > 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);
});
});