即时消息护照本地猫鼬
Flash messages passport-local-mongoose
我无法找到从何处获取即显消息
router.get('/login', function(req, res) {
res.render('login', {
user : req.user,
failureMessage : req.flash('fail')
});
});
router.post('/login', passport.authenticate('local', {
successRedirect : '/dashboard',
failureRedirect : '/login',
failureFlash : true,
}), function(req, res) {
// none of this will run right?
});
我正在渲染一个登录页面,当用户提交数据时,它会转到 passport.authenticate 中间件,它会处理剩下的事情,而不会转到额外的回调,所以我怎样才能得到 flash 消息所以我可以在重定向回 /login 页面时显示它?
另一个问题是我是否应该做
passport.use(User.createStrategy());
或
passport.use(new LocalStrategy(User.authenticate()));
文档告诉我使用第一个:https://github.com/saintedlama/passport-local-mongoose#simplified-passportpassport-local-configuration但我还没有看到使用第一个的教程。
弄清楚了如何处理即显消息。看起来应该这样做。
router.get('/login', function(req, res) {
res.render('login', {
user : req.user,
error : req.flash('error')
});
});
router.post('/login', passport.authenticate('local', {
successRedirect : '/dashboard',
failureRedirect : '/login',
failureFlash : { type: 'error', message: 'Invalid username or password.' }
}));
我无法找到从何处获取即显消息
router.get('/login', function(req, res) {
res.render('login', {
user : req.user,
failureMessage : req.flash('fail')
});
});
router.post('/login', passport.authenticate('local', {
successRedirect : '/dashboard',
failureRedirect : '/login',
failureFlash : true,
}), function(req, res) {
// none of this will run right?
});
我正在渲染一个登录页面,当用户提交数据时,它会转到 passport.authenticate 中间件,它会处理剩下的事情,而不会转到额外的回调,所以我怎样才能得到 flash 消息所以我可以在重定向回 /login 页面时显示它?
另一个问题是我是否应该做
passport.use(User.createStrategy());
或
passport.use(new LocalStrategy(User.authenticate()));
文档告诉我使用第一个:https://github.com/saintedlama/passport-local-mongoose#simplified-passportpassport-local-configuration但我还没有看到使用第一个的教程。
弄清楚了如何处理即显消息。看起来应该这样做。
router.get('/login', function(req, res) {
res.render('login', {
user : req.user,
error : req.flash('error')
});
});
router.post('/login', passport.authenticate('local', {
successRedirect : '/dashboard',
failureRedirect : '/login',
failureFlash : { type: 'error', message: 'Invalid username or password.' }
}));