【发布时间】:2018-06-04 17:06:15
【问题描述】:
我在我的 node/express 应用程序中使用 Passport.js 进行身份验证,当输入字段为空时,护照显示默认消息“缺少凭据”,我该如何更改?说诸如请填写表格之类的话
这里是我的本地登录策略:
passport.use('login', new LocalStrategy({
usernameField: 'email',
passwordField: 'password'
},
function(email, password, done) {
models.User.findOne({where: {email}}).then(user => {
if (!user)
return done(null, false, {message: 'Email not registered'});
user.checkPassword(password).then(res => {
if (!res)
return done(null, false, {message: 'Incorrect username or password'});
return done(null, user);
});
});
}));
登录路径:
router.post('/login', passport.authenticate('login', {
successRedirect: '/',
failureRedirect: '/login',
failureFlash: true
}));
【问题讨论】:
-
你可以试试
if (!email && !password) return done(null, false, { message: "Missing credentials" }) -
在
models.User.findOne...行之前试试 -
我已经试过了,还是不行
-
它说什么?它有输出吗?
-
是的,没有任何改变
标签: node.js express passport.js