Facebook Graph API分页并没有给出确切的结果


Facebook Graph API pagination is not giving the exact result?

我正在使用Graph API来获取特定查询的数据。

function getFeed($access_token,$until)
{
  $result = $this->facebook->api(
    '/me/home', 
    'GET', 
    array(
      'access_token' => $access_token,
      'limit' => 5,
      'until' => $until
    )
  );
  return $result;
}

我通过jQuery调用这个函数并在每次调用中获取5个post。但在打了两三个电话之后,它并没有给出确切的结果。它会跳转到2 - 3天前(例如1天前跳转到4天前,例如今天是星期二,所以它会跳转到星期二的feed,而不是跳过星期一直接跳转到星期天的feed)。然后,它将停止提供数据,并给出空结果。

如果我将限制从5个增加到25个,那么它将给出一些准确的结果,但它将只给我最近5天的帖子,而不是更多,然后它将给出空结果

  1. 那么我们每次可以用图形API获取多少数据有限制吗?

  2. 在一次呼叫中获取更多帖子是好的吗?(例如从5到25或更多)有什么区别吗?

  3. 在图形API中分页的最佳实践是什么?

关于第一个&第二个问题,

它不在文档中,但我个人已经为我的项目测试了以下内容。

Facebook limit限制为500个帖子。无论您设置的限制高于500,它最多只能获取500个结果。尝试500(或更多),您将获得最多的帖子。

你不会每次都收到500个帖子,但通常会收到490个以上的帖子。有些帖子会因为各种原因被过滤掉(比如隐私,被屏蔽的用户,不适合特定区域和其他事情)

更多详细信息请查看Facebook Open Graph API:获取分页用户's新闻feed时参数限制的奇怪行为

关于第三个问题,

http://developers.facebook.com/blog/post/478/

想增加你关于graph api的知识吗?