带有passport.js的Facebook Graph API v 2.2:个人资料图片返回undefined
问题描述:
我使用passport.js在node.js中执行Facebook身份验证。一切正常,除了用户个人资料图片。我尝试这些方法:带有passport.js的Facebook Graph API v 2.2:个人资料图片返回undefined
user.facebook.picture = profile.user_photos[0].value;
user.facebook.picture = 'https://graph.facebook.com/' + user.facebook.id + '/picture?height=350&width=250';
,并且还加入访问令牌:
user.facebook.picture = 'https://graph.facebook.com/' + user.facebook.id + '/picture?height=350&width=250' + "&access_token=" + user.facebook.token;
然而,在客户方的Facebook图片返回undefined。可能的解决方案是什么?
答
我设法解决这个问题,但以非常奇特的方式。 而是在passport.js配置中使用
user.facebook.picture = 'https://graph.facebook.com/' + user.facebook.id + '/picture?height=350&width=250';
的,我在那样routes.js定义图片:
app.get('/profile', isLoggedIn, function(req, res) {
res.render('profile.ejs', {
user : req.user,
picture: 'https://graph.facebook.com/' + req.user.facebook.id + '/picture?height=350&width=250'
});
});
+0
我想这个问题与* ejs *模板的请求本地化*有关,而不是来自fb护照。 – 2015-03-03 07:08:27
能否请你检查什么你得到的* graph.facebook.com/{ UserProfileId}/picture * uri – 2015-03-02 12:31:30
我正在得到我需要的东西。不知何故,你的问题推动我尝试另一种选择,谢谢你的提示 – vitalym 2015-03-02 14:26:23