Я могу пройти проверку подлинности с помощью паспортной стратегии Facebook, но при перезагрузке страницы уже прошла проверку подлинности, это сообщение появляется, и мой URL остается таким:
http://localhost:3000/facebook/callback?code=AQB-ijUybyMQAZ7p7eXmwWT1DcDCdX6ugw_KVUAKUHIeLxTJtH4JeVKPA3tGu1_p40NxOUwtUg0cyhy1WTKPfSXTMUWIvXoOpiE3-J48u65XSED0Op2PVmrFbYforijwGJnF3EsJbzF8gBhR-eBP7kH9qekDl86Jyue8uRDulXOQLyXsftfPNlCP6UYQVm1ATAJLHINkWo3UWLswxMEQUp8F-Dj3X6U0vMFf4ePbhBK8k2Oxjfnru67p9UWGHFgt1OAtdogdV769wDCRIOgjf3NkhAjDE3r-w20j9yiCBzIIxLWzA7PWJBLeLWrfhBruWc5LOqTgSeOL5Av-hKe0_TFwixB4JV3RQN97gmzdU1F4sA#_=_
FacebookTokenError: This authorization code has been used.
at Strategy.parseErrorResponse (C:\FullStack\#FullStack Master\ARafas\node_modules\passport-facebook\lib\strategy.js:198:12)
at Strategy.OAuth2Strategy._createOAuthError (C:\FullStack\#FullStack Master\ARafas\node_modules\passport-oauth2\lib\strategy.js:405:16)
at C:\FullStack\#FullStack Master\ARafas\node_modules\passport-oauth2\lib\strategy.js:175:45
at C:\FullStack\#FullStack Master\ARafas\node_modules\oauth\lib\oauth2.js:191:18
at passBackControl (C:\FullStack\#FullStack Master\ARafas\node_modules\oauth\lib\oauth2.js:132:9)
at IncomingMessage.<anonymous> (C:\FullStack\#FullStack Master\ARafas\node_modules\oauth\lib\oauth2.js:157:7)
at IncomingMessage.emit (events.js:187:15)
at endReadableNT (_stream_readable.js:1094:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
Вот мой код:
passport.use(new FacebookStrategy({
clientID: '1295499857504314',
clientSecret: 'a9506b875166b85a4f32b997a4696bac',
callbackURL: 'http://localhost:3000/facebook/callback',
profileFields: ['id', 'displayName', 'email', 'photos']
}, async(accessToken, refreshToken, profile, done) => {
if(!userDB){
const user = new User({
username: profile.email,
displayName: profile.displayName,
})
await user.save()
done(null, user)
}else{
done(null, userDB)
}
}))
router.get('/facebook', passport.authenticate('facebook', { scope: ['email']}))
router.get('/facebook/callback',
passport.authenticate('facebook', { failureRedirect: '/login'}),
async (req, res) =>{
res.render('/parties');
}
)