上次我使用passport authenticate以下列方式登录:
router.post('/login', parserUrlEncodedTrue, (request, res, next) => {
console.log('logging in user');
passport.authenticate('local', (err, user, info) => {
var options = "";
if(err){
return next(err);
}
if(!user){
return res.json({
error: true,
message: "User doesn't exist"
});
}
req.logIn(user, function(err) {
if (err){
return next(err);
}
return res.json({
error: false,
message: "Login Success"
});
});
})(req, res, next);
现在我尝试使用formidable.js,它可以正常注册,但无法使用登录。
let form = new formidable.IncomingForm();
form.parse(req, (err, fields, files) => {
if(err){
helpers.errors(err, res);
} else {
passport.authenticate('local', (err, user, info) => {})(req, res, next);
}
});
passport.authenticate在被强大的解析之前获取req。我也使用快递和护照本地猫鼬。