0
У меня есть система аутентификации с помощью паспорта, я не знаю, почему, но «не определено» значение, которое она возвращает, кто-то может мне помочь, вот мой код ниже:Моя система аутентификации возвращает неопределенное
app.js
passport.use(new LocalStrategy(function (username, password, done) {
Person.findOne({ 'account.username' : username }, function (err, person) {
if (err) {
return done(err);
}
if (!profile) {
return done(null, false, { message: 'Invalid username or password' });
}
// My self defined function that encrypts the password
var encryptedPassword = myFunc.encrypt(password);
if (person.account.password !== encryptedPassword) {
return done(null, false, { message: 'Invalid username or password' });
} else {
return done(null, profile);
}
});
}));
person.js
//POST: /login
app.post('/login', passport.authenticate('local', {failureRedirect: '/login',
failureFlash: true}),
function (req, res) {
console.log(req.profile);
res.redirect('/home');
}
);
//GET: /home
app.get('/home', function (req, res) {
console.log(req.profile); // Returns Undefined
});
Это также происходит, когда я отобразить страницу, которая имеет переменную req.profile.
ли первый маршрут ('POST/login') на самом деле что-то для входа' req.profile'? Паспорт будет заполнять 'req.user', если активен сеанс регистрации, но не' req.profile'. – robertklep
спасибо, человек, я получил его работу, большое спасибо –