我尝试使用FQL在一个请求中为desc订购的所有朋友的最新照片,但我只有两个朋友的照片以回应此查询:
SELECT src_small ,owner,created FROM photo WHERE aid IN (
SELECT aid FROM album WHERE owner IN (
SELECT uid2 FROM friend WHERE uid1=me()
)
)ORDER BY created DESC
如果我删除了我的子查询的顺序,那就是同样的问题我只有5个朋友的照片
我有很好的权限
这对我来说很成问题,因为我想加载本周的最新照片(包括所有朋友和列出朋友)
您有想法或曾经解决过这个问题吗?
非常感谢你的帮助, 我完全陷入困境和失望
答案 0 :(得分:1)
问题在于您可以返回多少数据。 FB将您限制在约5K左右。 [5位朋友平均有1000张照片= 5K]。 FQL没有分页照片的方法。
您需要做的是获取每张专辑,按创建日期排序,并根据您拥有的朋友数限制结果。 (1K朋友=每张5张照片)
你会注意到下面的代码(为了清楚起见分为3部分),许多专辑都是按照需要返回的,但是从5中返回的图片太少了。没有简单的FQL答案。
{
"query1":"SELECT uid2 FROM friend WHERE uid1=me()",
"query2":"SELECT aid,owner FROM album WHERE owner IN (SELECT uid2 FROM #query1)",
"query3":"SELECT src_small ,owner,created FROM photo WHERE aid IN (SELECT aid FROM #query2) ORDER BY created DESC"
}