Я работаю в системе входа в систему в Nodejs с Passport, все работает хорошо, но когда я нажимаю кнопку входа в систему, он ведет меня по маршруту, указанному в successRedirect, но с сообщением об ошибке и сообщением об ошибке является функция ниже.
function deserialized(e, u) {
pass(i + 1, e, u);
}
в консоли я тоже получаю то же сообщение.
обработка запроса
module.exports.Login=function(req,res,next){
passport.authenticate('local',{
successRedirect:'/Dashboard',
failureRedirect:'/Login',
failureFlash:true
})(req,res,next)
}
паспорт. js файл
const LocalStrategy = require('passport-local').Strategy;
const bcrypt = require('bcryptjs');
const bodyparser = require('body-parser')
const conn = require('../Model/db');
const flash=require('express-flash')
module.exports = function(passport) {
passport.use(new LocalStrategy({usernameField:'Email'},function(Email,password,done){
var select=`SELECT * FROM user WHERE email='${Email}'`;
conn.query(select,(err,user)=>{
if(err) throw err;
if(user.length == 0 )
{
done(null,false,{message:'incorrect Login Information'})
}
else{
bcrypt.compare(password,user[0].Password,(err,resdb)=>{
if(err) throw err;
if(resdb==true){
done(null,user,{message:'Successfully loged in'})
}
else{
done(null,false,{message:'incorrect Login Information'})
}
})
}
})
}))
passport.serializeUser((user,done)=>{
done(null,user[0].id)
})
passport.deserializeUser(function(id,err){
if(err) throw err;
var select=`SELECT * FROM user WHERE id='${id}'`;
conn.query(select,(err,user)=>{
done(err,user)
})
})
}