我写了一个注册表单,使用passport-local
是有效的,但我想添加express-validator
来验证我的表单数据。我在路由器上添加了验证,这是我的router/index.js
代码:
/* Handle Registration POST */
router.post('/signup', function(req, res) {
req.assert('email', 'A valid email is required').isEmail();
var errors = req.validationErrors();
if(errors){ //No errors were found. Passed Validation!
res.render('register', {
message: 'Mail type fault',
errors: errors
});
}
else
{
passport.authenticate('signup', {
successRedirect: '/home',
failureRedirect: '/signup',
failureFlash : true
});
}
});
验证功能是正常的,但如果验证成功,则网页会长时间加载且没有响应。我已经搜索了护照文档,但不知道如何修复它。
这是原始代码,它可以工作。
/* Handle Registration POST */
router.post('/signup', passport.authenticate('signup', {
successRedirect: '/home',
failureRedirect: '/signup',
failureFlash : true
}));
我认为我可以使用jQuery进行结账,但我不会这样做。因为我只想尝试使用护照验证器。