PassportJS не возвращает данные
У меня проблема с PassportJS, когда я не могу заставить разные модули ничего возвращать.
Например, когда я использую passport-google-oath20
У меня есть такой код
passport.use(new GoogleStrategy({
clientID: keys.google.clientID,
clientSecret: keys.google.clientSecret,
callbackURL: "http://localhost:3000/auth/google/redirect"
},
function(accessToken, refreshToken, profile, cb) {
console.log(accessToken);
console.log(refreshToken);
console.log(profile);
}
));
собираться в passport.authenticate
маршрут, он просто выводит
{}
Я использую google
стратегия в качестве примера, но это не работает ни для одной из моих стратегий.
Я дважды проверил, что все ключи правильные и что у меня есть правильные разрешения, но из-за того, что он делает то же самое для всех из них, кажется, что это связано с конкретным проектом.
1 ответ
Вы получаете пустой объект в passport.authenticate
потому что ты не звонил cb
от функции, которая получает информацию о пользователях от Google.
function(accessToken, refreshToken, profile, cb) {
console.log(accessToken);
console.log(refreshToken);
console.log(profile);
cb(null, profile);
}
Без звонка cb
, authentication
метод никогда не будет выполнен
Также, пожалуйста, проверьте, правильно ли вы установили область.