我需要在一天之后和另一天之前获取用户供稿中的所有条目。由于我不知道那个时期有多少个条目,并且参数LIMIT似乎是必需的,因此我将限制设置为例如100。

当准备好解析数据时,我必须检查(或者不是吗?)键PAGING是否在结果集中,如果是,则再次查询存储在其中的数据。

我不确定这种逻辑是否正确。我的第一个想法是在PAGING仍然存在的情况下循环结果集,然后再次查询。如果PAGING为空,则将JSON返回给用户。这将意味着查询中没有更多页面,并且我已获得所需的所有数据。

我正在使用SINCE和UNTIL参数来指定日期范围。

问题是我总是收到超过时间限制的错误:在...中超过30秒的最大执行时间

看来PAGING一直都在那儿,所以我的循环实际上是在搜索用户提要中的所有条目,因为他(或她)创建了他或她的帐户。我不确定这一点,但是我敢肯定:它的执行类似于13、14或15个查询,但是超时了。正如我所看到的,某些结果不在指定的日期范围内(我认为这是因为键PAGING并没有最初设置所有参数)。

您是否知道这是否是查询用户供稿中数据的最佳解决方案?

还有一件事:我正在使用自己的供稿进行测试。我在时间轴上发布的一些结果我不认识。所以我假设它们是评论,而不是帖子/状态。您对此一无所知吗?

@ EDIT1

看看这个:

我的第一个查询:
/ me / feed?access_token = MY_ACCESS_TOKEN&fields = message&since = 2014-02-11&until = 2014-02-17&limit = 100

PAGING-> NEXT中的字符串
https://graph.facebook.com/MY_ID/feed?fields=message&limit=100&access_token=MY_ACCESS_TOKEN&until=1392153316

它切断了since参数,我认为until转换为UNIX时间(自1970年开始)。

但是我检查了时间表,并在2014年11月2日至2014年2月17日期间发布的所有内容都在结果集中(包括一些与我共享的朋友和一些我不知道它们是什么的东西)。

那么我怎么知道何时必须使用PAGING-> NEXT来获取我真正需要的更多数据呢?

我将在一分钟内尝试使用一些代码对其进行编辑

最佳答案

您必须将unix时间戳记用作since和until参数,否则它将不起作用。

/me/feed?since=1391244171&until=1391848971&fields=message

09-15 19:39