Facebook graph api IN参数超过20时Facebook FQL错误

Facebook graph api IN参数超过20时Facebook FQL错误,facebook-graph-api,facebook-fql,facebook-php-sdk,Facebook Graph Api,Facebook Fql,Facebook Php Sdk,上面的查询非常有效。但是,当我将限制从20增加到21或更高时,我会得到一个错误,查询返回Null。我期待查询所有朋友共享的链接。谢谢。执行该查询需要很长时间。只需在Graph API explorer中测试几次,即使从20个朋友那里获得链接也需要>28秒。在我写这篇文章的时候,我有一个100个朋友的查询。我们会在我完成之前看看它是否完成 看起来,如果你想让所有的朋友共享所有的链接,你需要把这个查询分成更小的块并重复多次 我可能会这样构建它,首先获取你最亲密朋友的链接,然后深入挖掘与你没有太多共同

上面的查询非常有效。但是,当我将限制从20增加到21或更高时,我会得到一个错误,查询返回Null。我期待查询所有朋友共享的链接。谢谢。

执行该查询需要很长时间。只需在Graph API explorer中测试几次,即使从20个朋友那里获得链接也需要>28秒。在我写这篇文章的时候,我有一个100个朋友的查询。我们会在我完成之前看看它是否完成

看起来,如果你想让所有的朋友共享所有的链接,你需要把这个查询分成更小的块并重复多次

我可能会这样构建它,首先获取你最亲密朋友的链接,然后深入挖掘与你没有太多共同点的人:

$fql = "SELECT link_id, owner, created_time, title, summary, url, image_urls FROM link WHERE owner IN (select uid2 from friend where uid1 = me() LIMIT 20) AND created_time >= $_7ago";
您将以20的倍数递增
$offset

这最好作为一个异步查询来完成,在这里您可以快速获得初始结果,其他人将在它们可用时进行填充。要得到所有这些结果需要很长时间

(100好友查询5分钟后仍未返回结果。)


顺便说一句,别忘了将问题标记为已解决。

问题是因为查询耗时太长,所以会崩溃?对于我最初的查询,加载大约需要5-10秒。对于任何更长的时间,它只会在5-10秒内使站点崩溃。ThanksIt可能不是正在崩溃的Facebook。在php.ini文件中检查您的。这可能是你的极限的来源。
SELECT link_id, owner, created_time, title, summary, url, image_urls FROM link 
  WHERE owner IN (SELECT uid FROM user WHERE uid IN 
    (SELECT uid2 FROM friend WHERE uid1 = me()) 
    ORDER BY mutual_friend_count LIMIT $offset, 20)
  AND created_time >= $_7ago