2017-06-12 37 views
0

我想意见和subcomments(LIB:restfb对Java)来获取Facebook发布Facebook页面速率限制 - 抓取后意见和subcomments

public Post getNewPost(String postId) { 
    ... 
    String fields = ".... fields ..."; 
    Post foundPost = facebookClient.fetchObject(postId, Post.class, Parameter.with("appsecret_proof", prof), Parameter.with("fields", fields)); 

而且它的伟大工程,取出后和内容。我的问题是,'请求'花费我api每个评论和子评论的要求?

E.g

1)后 - > 2条评论

通过获取这个职位我将使用后&内容1次API调用(1)或3 API调用? (1为& 2用于评论)。

我知道图表api提供.limit(x)函数,但我必须从这篇文章中获取帖子和任何评论,至少有N条历史评论。如果它是评论或子注释,则无关紧要。所以我不能使用,直到/自和限制功能。

所以我的第二个问题是有没有什么办法来获取帖子和所有评论和子注释只有1个API调用或如何最小化API调用。

回答

0

好的,所以答案是:这取决于。您无法在一次通话中获得无限次的评论,因此您必须翻阅评论。

要获取所有评论和子注释,您可以使用filter=stream参数。使用此选项,所有评论和子注释按时间顺序作为普通列表返回。看到这里https://developers.facebook.com/docs/graph-api/reference/v2.9/object/comments/

如果你只获取所有评论的帖子,你可以获取帖子(1次)然后获取相关评论(总数评论+子评论除以每页元素数)。我不确定每页可以获得的最大限制,但我认为它在200到500之间。因此,您可以优化呼叫。

顺便说一句,你可以通过你的帖子获取评论数量,如果没有评论请求,请求评论。或者您可以通过帖子获取评论的最大限制。那么只有在超过最大限制评论的情况下,您才必须翻页。