流星JS HTTP GET档案相片 - 服务器端
问题描述:
我已经在服务器端,这些流星HTTP.get
方法尝试:流星JS HTTP GET档案相片 - 服务器端
HTTP.get(`http://graph.facebook.com/${fbUserId}/picture?callback=?`, {
headers: {
'content-type': 'application/json',
}
}, function(data){
console.log(data); // [Error: failed [400]]
});
HTTP.get(`https://graph.facebook.com/${fbUserId}/picture`, {
headers: {
'content-type': 'application/json',
}
}, function(data){
console.log(data); // null
});
然而,这部作品在使用jQuery的客户端:
$.getJSON(`http://graph.facebook.com/${fbUserId}/picture?callback=?`, function(data){
console.log(data); // {url: 'http://img-url...'}
});
任何想法?
UPDATE @Ethaan答案工作(有一些补充):
function _fetchUserFacebookThumbnail(fbId){
return new Promise(function(resolve, reject){
HTTP.get(`https://graph.facebook.com/${fbId}/picture/?redirect=0&type=square`, function(error, data){
resolve(data['data']);
});
});
}
根据FB开发者文档中,?redirect=0
查询请求JSON对象,而不是图像本身。
答
你在第二个获得null
因为没有错误,因此这意味着第二个例子中的工作,尝试用error
,data
而不是仅仅error
。
此外,如果你只想获得picuture,你可以链接到这个。
facebookPicture = "https://graph.facebook.com/" + userFacebookId + "/picture/?type=large";
顺便说一句,在这里头起坐= P墨西哥开发商。
你说得对!谢谢你的帮助。 – Gus