我正在尝试进行身份验证,然后使用路由在同一登录页面上一个接一个地使用Facebook和Twitter进行授权。
尽管req.session.passport.user
上有Twitter数据,但是我希望Twitter和Facebook数据都出现在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)
})