Множественная аутентификация с использованием Passport JS со стратегиями Facebook и Twitter - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь пройти аутентификацию, а затем авторизоваться, используя Facebook и Twitter, используя один за другим паспорт на той же странице входа в систему, используя маршруты.

Хотя req.session.passport.user заполняется данными твиттера, но я хочу, чтобы и данные твиттера, и фейсбука присутствовали в req.session.passport.user.

Я заметил, что passport.serializeUser вызывается только один раз, когда я аутентифицируюсь, как сериализовать пользователя оба раза при входе в систему?

//authenticate

app.get('/auth/twitter',
passport.authenticate('twitter-authz')
);
app.get('/auth/twitter/callback',
passport.authenticate('twitter-authz', { successRedirect : '/', failureRedirect: '/' }),
function(req, res) {

 res.render(index)
}
);

//authorize 

app.get('/auth/facebook',passport.authorize('facebook',{scope : [' user_friends ',' user_likes ']}))

app.get('/auth/facebook/callback',passport.authorize('facebook',{scope : ['user_friends' ,' user_likes ']}),(req,res)=>{
         res.render(index)

})
...