gpt4 book ai didi

node.js - 使用 Passport-facebook 来自 facebook 的特定用户信息

转载 作者:太空宇宙 更新时间:2023-11-03 22:12:56 25 4
gpt4 key购买 nike

我使用 Passport-facebook 进行 OAuth 并从 facebook 获取用户信息。但我得到的只是一些基本信息(即名字、姓氏)。我想要 userEmail 和friendList 等信息。

我当前的 Facebook 策略是 -

passport.use(new FacebookStrategy({
clientID: configAuth.facebookAuth.appID,
clientSecret: configAuth.facebookAuth.appSecret,
callbackURL: configAuth.facebookAuth.callbackUrl
},
function(accessToken, refreshToken, profile, done) {
process.nextTick(function() {
User.findOne({'facebook.id': profile.id}, function(err, user) {
if(err)
return done(err);
if(user)
return done(null, user);
else {
var newUser = new User;
console.log(profile);
newUser.facebook.id = profile.id;
newUser.facebook.token = accessToken;
newUser.facebook.name = profile. displayName;
newUser.save(function(err) {
if(err)
throw err;
return done(null, newUser);
})
}
})
})
}
));

有人可以告诉我如何获取用户的电子邮件或 friend 列表。提前致谢!!

最佳答案

如果您需要电子邮件和 user_friends,则必须在请求 facebook-auth 时将它们添加到范围中。我想添加以下代码会对您有所帮助:

app.get('/auth/facebook', passport.authenticate('facebook', { scope : ['email,user_friends'] }));

关于node.js - 使用 Passport-facebook 来自 facebook 的特定用户信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36899217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com