на месте
ользую Node.js, angularjs, экспресс и паспорт. Я перепробовал все возможные варианты, но пока не нашел решения. Не удалось найти решение из других сообщений по этой проблеме.
app.post('/login', function(req, res, next) {
console.log(req.body.Email);
console.log(req.body.Password);
passport.authenticate('local', function(err, user, info) {
console.log(err,user,info);
...
В приведенном выше примере req.body показывает правильный в консоли, но при аутентификации паспорта он показывает null, false и информацию как отсутствующие учетные данные
Я использовал следующее для прохода через порт
passport.use(new LocalStrategy({ usernameField: 'Email' }, (Email, Password, done) => {
console.log(Email, Password, done);
User.findOne({ Email: Email.toLowerCase() }, (err, user) => {
console.log(err);
if (err) { return done(err); }
if (!user) {
return done(null, false, { msg: `Email ${Email} not found.` });
}
user.ComparePassword(Password, (err, isMatch) => {
if (err) { return done(err); }
if (isMatch) {
return done(null, user);
}
return done(null, false, { msg: 'Invalid email or password.' });
});
});
}));
passport.serializeUser((user, done) => {
// console.log(user, done);
done(null, user.id);
});
passport.deserializeUser((id, done) => {
User.findById(id, (err, user) => {
done(err, user);
});
});
Я не мог понять, почему проблема существует.
Кто-нибудь знает, что мне здесь не хватает?!?!
Спасибо!