目标
在用户成功验证后,我想重定向到另一个页面(工作) 在不成功的身份验证,我想要一条消息闪存(密码不正确) 没有重新加载页面
问题
如果尝试失败,它会重定向到相同的网址,但空白页面只显示"未经授权的"
终点代码
app.post('/', passport.authenticate('local-login', {
successRedirect : '/hospital',
failureRedirect : '',
failureFlash : true
}));
本地代码
passport.serializeUser(function (user, done) {
done(null, user.id);
});
passport.deserializeUser(function (id, done) {
models.User.findById(id).then(function (user) {
done(null, user.dataValues);
}).error(function (err) {
done(err, null);
});
});
passport.use('local-login', new LocalStrategy({
usernameField: 'username',
passwordField: 'password',
passReqToCallback: true
},
function (req, username, password, done) {
hashedPass = crypto.createHash('md5').update(password).digest("hex");
models.User.findOne({where: {username: username}}).then(function (result) {
if (!result) done(null, false, {message: 'Unknown user'});
if (result.password !== hashedPass) done(null, false, {message: 'Incorrect password'});
else done(null, result);
});
}));