我需要在一天之后和另一天之前获取用户供稿中的所有条目。由于我不知道那个时期有多少个条目,并且参数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