页面进纸中的LIMIT,SINCE和UNTIL参数

时间:2011-09-06 12:02:49

标签: facebook-graph-api limit news-feed

我正在尝试使用限制获取页面的新闻Feed(我是该页面的管理员)直到参数,但它不起作用,即使在图形api资源管理器工具中它也不起作用。我要求以下内容:

$fb->api("/PAGE_ID/feed?limit=100")

但它始终会返回最后25个帖子,直到参数也不起作用。我的代码有什么问题?

提前致谢。

5 个答案:

答案 0 :(得分:17)

对于那些没有使用PHP SDK且直接访问相关Graph API URL的人,只需附加

即可
&limit=SOMEPOSITIVEINTEGER

到URL的末尾,如下所示:

https://graph.facebook.com/PAGEGRAPHOBJECTID/posts/&since=2011-07-01&until=2012-08-08&access_token=ACCESSTOKEN&limit=100

不幸的是,根据您正在击中的图形资源,如果限制超过某个阈值,您可能会收到错误,并且没有任何押韵或理由可以确定。例如,获得帖子的评论或喜欢,我使用了4900的限制而没有收到错误。从页面Feed中获取帖子时,相同的数字给了我一个错误,现在我使用限制为100然后分页,直到我的cron看到日期范围之外的帖子。

我想虽然FB希望我们使用默认限制25和分页,所以我个人重构以适应这个。

答案 1 :(得分:9)

我找到了使用这些参数的正确方法。我应该在调用api方法时将限制或任何其他参数作为第三个参数传递:

$feed = $this->fb->api("/PAGE_ID/feed", "GET", array('limit' => 2));

答案 2 :(得分:1)

您的代码没有任何问题。据我所知,Facebook Graph API已经崩溃;查询连接时,documented分页参数无效。

答案 3 :(得分:0)

对于我来说, since until date_format=U 参数一起使用时,提供值作为UNIX时间戳:

me/posts?fields=id,created_time&limit=100&date_format=U&since=1558355000&until=1558356000

在Graph API 2.12和3.3中进行了测试

答案 4 :(得分:0)

对于我来说,sinceuntil在以下情况下工作:

me/posts?limit=100&since=2017-01-23T13:11:12&until=2019-08-21T01:11:12&fields=id,created_time

me/posts?limit=100&since=2017-01-2313:11:12&until=2019-08-2101:11:12&fields=id,created_time