我目前正在使用以下代码检索用户个人资料中的所有照片
FB.api('/me/albums?fields=id,name', function(response) {
//console.log(response.data.length);
for (var i = 0; i < response.data.length; i++) {
var album = response.data[i];
FB.api('/' + album.id + '/photos', function(photos) {
if (photos && photos.data && photos.data.length) {
for (var j = 0; j < photos.data.length; j++) {
var photo = photos.data[j];
// photo.picture contain the link to picture
var image = document.createElement('img');
image.src = photo.picture;
document.body.appendChild(image);
image.className = "border";
image.onclick = function() {
//this.parentNode.removeChild(this);
document.getElementById(info.id).src = this.src;
document.getElementById(info.id).style.width = "220px";
document.getElementById(info.id).style.height = "126px";
};
}
}
});
}
});
但是,它返回的照片质量很差,基本上就像缩略图。如何从相册中检索更大的照片。
一般来说,对于个人资料图片,我使用?type = large,它会返回一个不错的个人资料图片
但是对于来自相册的照片,type = large不起作用 还有一种方法可以在我指定照片网址时从Facebook获取zip格式的照片,因为我希望用户能够下载照片。
答案 0 :(得分:3)
您需要更改:
image.src = photo.picture;
为:
image.src = photo.source;
源成员是指向完整照片的链接,而不是图片成员提供的缩略图链接。
参考链接: https://developers.facebook.com/docs/reference/api/photo/