我正在使用以下代码来获取facebook专辑封面照片
embed facebook albums into website
<script>
$(document).ready(function() {
var albumIdsUrl = "https://graph.facebook.com/<myname>/albums?callback=?";
$.getJSON(albumIdsUrl, function(data) {
var len = data.data.length;
for(var i=0;i<len;i++){
var aid = data.data[i].id;
getAlbumCoverPhoto(data.data[i].cover_photo, data.data[i].id, data.data[i].name, data.data[i].count);
}
});
});
function getAlbumCoverPhoto(coverPhoto, albumId, albumName, count) {
var coverPhotoUrl = "https://graph.facebook.com/" + coverPhoto + "?callback=?";
$.getJSON(coverPhotoUrl, function(coverPhotoData) {
if(typeof(coverPhotoData.picture)!="undefined"){
htmlData = '<li><figure><a class="imageLink" href="fb_album_photos.html?id='+ albumId + '"><img src="' + coverPhotoData.picture + '" /></a></figure><figcaption>'+albumName+'</br>'+count+' Photos</figcaption></li>';
$('#FBalbum').append(htmlData);
}
});
}
</script>
这会正确返回,但会获得低分辨率的照片 http://photos-d.ak.fbcdn.net/hphotos-ak-prn1/75750_121602837899727_4898592_s.jpg
而不是更高的res _n照片。 http://photos-d.ak.fbcdn.net/hphotos-ak-prn1/75750_121602837899727_4898592_n.jpg
如何更改此图片才能获得正确的照片?
答案 0 :(得分:0)
Facebook相册对象有一个名为照片的连接。照片连接将提供此相册下的照片列表。此Photo对象有一个名为images的字段。图像字段将为照片提供4种不同的存储表示。
https://graph.facebook.com/me/albums?fields=photos.fields(picture,images)
"data": [
{
"id": "10150146071831729",
"from": {
"category": "Product/service",
"name": "Facebook",
"id": "20531316728"
},
"picture": "https://fbcdn-photos-a.akamaihd.net/hphotos-ak-ash3/168119_10150146071831729_5116892_s.jpg",
"source": "https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-ash3/168119_10150146071831729_5116892_n.jpg",
"height": 483,
"width": 720,
"images": [
{
"height": 1373,
"width": 2048,
"source": "https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-ash3/s2048x2048/168119_10150146071831729_5116892_n.jpg"
},
在图像下,您可以使用_n.jpg查看图片。