在我的应用程序中,我按照以下方式注册了Facebook策略:但是返回的个人资料中不包含电子邮件字段...
以下是get请求的内容:
passport.use(new FacebookStrategy({
clientID: config.facebook.clientID,
clientSecret: config.facebook.clientSecret,
callbackURL: config.facebook.callbackURL,
passReqToCallback: true
},
function(req, accessToken, refreshToken, profile, done) {
// No email in the following colsole.log
console.log(JSON.stringify(profile));
}));
以下是get请求的内容:
app.get('/oauth/facebook', passport.authenticate('facebook', {
failureRedirect: '/login',
scope:['email']
}));
我正在使用范围(scope),如此处所述:Passport-facebook doesn't get email
在FB登录页面上,我甚至被要求输入电子邮件地址,并且我已经提供了它:
![enter image description here](https://istack.dev59.com/lz1UB.webp)
非常感谢任何帮助!
scope:['email']
来实现。 - Rentrop