Вроде сделал все как в инструкции, но никак не могу авторизоваться. Пытаюсь вивести payload, чтобы посмотреть, почему не находит пользователя, но получаю результаты только от
passport.authenticate('jwt'), а от самой стратегии ничего не выводит. Получаю нормальный токен. Потом через postman передаю его, но получаю ошибку: "user not found". Передавал и через боди в опции
auth_token и через Headers в
Authorization. Пользователя нашло, токен нормально создало, проверял. Что я делаю не так?
Passport.use(new JwtStrategy(jwtOptions, function (payload, done) {
console.log("payload:", payload) // даже не срабатывает
User.findById(payload.id, (err, user) => {
if (err) {
return done(err)
}
if (user) {
done(null, user)
} else {
done(null, false)
}
})
})
);
router.get('/ss', async (ctx, next) => {
await passport.authenticate('jwt', { session: false }, function (err, user) {
if (user) {
ctx.body = "hello " + user.email;
} else {
ctx.body = "No such user";
console.log("err", err) // получаю вывод только здесь
}
} )(ctx, next);
});