FQL - 获取Facebook用户专辑封面和图片数量


FQL - Getting Facebook user Album Covers and number of pictures

是否可以获取所有用户的专辑封面+每个相册的图片数量?

我可以通过以下方式获取用户专辑封面:

SELECT aid, pid, src_small, src, src_big FROM photo WHERE aid IN(SELECT aid FROM album WHERE owner=me()

.

但我还想得到每个相册中有多少张照片......

我可以运行一个循环所有用户相册,并为每个相册运行另一个 FQL,但如果有更好的方法可以更快/更高效地做到这一点,我会徘徊

有什么建议吗?

谢谢格塔米尔

    function getAlbum() {
FB.api('/me/albums', function(resp) {
    console.log('Albums', resp);
    var ul = document.getElementById('albums');
    for (var i=0, l=resp.data.length; i<l; i++) {
      var
        album = resp.data[i],
        li = document.createElement('li'),
        span = document.createElement('span'),
        a = document.createElement('a');
      a.innerHTML = album.name;
       span.innerHTML = album.count;
      li.appendChild(a);
      li.appendChild(span);
      ul.appendChild(li);
    }
  });
}
每个

相册中的图片数量在"相册"表的"photo_count"属性中可用,因为您需要来自"照片"表的照片信息,并且 FQL 不支持连接表,因此唯一的问题是使用多查询

$multiQuery = {
 "query1":"SELECT aid,owner,name,photo_count,type,object_id FROM album WHERE owner IN (SELECT uid2 FROM friend WHERE uid1 = me())",
 "query2":"SELECT aid, pid, src_small, src, src_big FROM photo WHERE aid IN(SELECT aid FROM album WHERE owner=me())"
 };
$param = array(       
 'method' => 'fql.multiquery',       
 'queries' => $multiQuery,       
 'callback' => '');
$queryresults = $facebook->api($param);

我没有亲自测试过代码,但它应该是这样的