php – Facebook的5000 Post API限制
我对Facebook限制你的api电话的方式有疑问.
在本文的底部:http://developers.facebook.com/blog/post/478/ facebook说:
我想知道如何翻阅这样的公共数据.例如,采取Shakira:她上传的每张照片都有很多很多喜欢,这个api电话: https://graph.facebook.com/5027904559_10150854808869560/likes?format=json&limit=1000&offset=0&__after_id=100002349968919 最终停止在5000喜欢. https://graph.facebook.com/5027904559_10150854808869560/likes?format=json&limit=1000&offset=5000&__after_id=100000881924617 一个有趣的一点是,这些数据都是公开的,我不必登录Facebook就可以看到它.我知道有关于如何使用数据的隐私政策,这不是我的问题.如果数据是公开的,这些数据是哪个,为什么我们不能全部获取,如果可以的话,怎么样? 主要问题是: >如上所述,您可以获得超过5000个特定API调用的结果吗? 我知道这个问题有点开放,但我已经到处寻找答案而且没有详细记录.任何帮助都会很棒,我想很多人将来可能会参考这些信息. 更新: 运行此API调用时: https://graph.facebook.com/5027904559_10150854808869560/likes?format=json&limit=1000&offset=4964&__after_id=100000881924617 你得到一个结果,因此达到极限(至少接近它).有人建议使用FQL,这可能会返回更多.但我尝试用FQL在PHP中做同样的事情并且只获得了1条记录. $select = urlencode("SELECT user_id,object_id,post_id FROM like WHERE post_id='5027904559_10150854808869560' LIMIT 1000 OFFSET 4964"); $fql_query_url = 'https://graph.facebook.com/fql?q=' . $select; $fql_query_result = file_get_contents($fql_query_url); $fql_query_obj = json_decode($fql_query_result,true); 所以,到目前为止,唯一的答案是“不”,你总是限制在5000个结果.我不认为/知道具有某些特定权限的特定access_token是否有帮助. 还有一个更新,当我去Shakira的页面并点击“x这样的人”并开始向下滚动列表时,我也达到了极限.因此,不仅Facebook限制API和FQL返回,它们限制了自己的页面. 我有兴趣看看有谁知道为什么?它们一次只有5k高速缓存,如果人们用如此多的请求访问数据库,他们将无法处理规模?只是一个猜测.
遗憾的是,没有办法获得超过最后5000个物品.
除非,正如你所说,你从低于5000的时间开始维护它,然后存储它们. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |