我正在尝试在公共(public)墙上获取提要和相关评论。 因此,每隔 X 分钟我就会进行一次查询,以获取最新消息(提要和评论)。
我需要提要(自 myDate 以来的新提要)和评论(发布在新提要上的评论和发布在旧提要上的评论)。 因此,如果有人在较旧的提要上发表评论,我想得到它。 我尝试使用 FQL 和 Graph API 来做到这一点,但我没能找到最佳解决方案。
对于 FQL,LIMIT 和 OFFSET 存在一些问题(错误)并且不能很好地工作。 使用 Graph API 我没有那么大的权力。 所以这就是我尝试过的:
https://graph.facebook.com/PAGE_ID/feed?access_token=MY_ACCES_TOKEN0&limit=500&since=1350033469&until=now&updated_time>1350033469
这给了我最新的帖子,所以没问题,因为我正在为每个帖子做一个新查询,以便获得每个提要的评论:
https://graph.facebook.com/PAGE_ID/comment?access_token=MY_ACCES_TOKEN0&limit=500&since=1350033469&until=now&updated_time>1350033469
问题是,如果对旧帖子发表评论,我不会收到。
使用 FQL 我不能只过滤最新的帖子(基于我的发布日期)和有新评论的帖子。
https://api.facebook.com/method/fql.query?query=SELECT post_id, text, fromid FROM comment WHERE post_id IN (SELECT post_id FROM stream where source_id=PAGE_ID and comments.created_date>1350033469)&access_token=MY_ACCES_TOKEN
使用 Graph API 我有一个很好的分页(使用响应中的下一个和上一个链接)但是使用 FQL 我没有找到任何解决方案。
所以有人知道吗? 谢谢。
抄送
最佳答案
首先,FQL 正在弃用,因此您只需要使用Graph API。
我提出的解决方案是,当你已经有一个帖子时,你需要用它的唯一 ID 重新检查帖子,并且该请求给你两次,created_time
和 updated_time
,因此您需要检查您的 updated_time
是否更改。
Graph API 中给出的分页仅针对帖子,因此当帖子有新评论时,它们不会在列表中排在第一位,您需要自己寻找。
-- 更新--
使用 batch_requests
来实现这一点,因此您可以一次发出更多请求。
关于Facebook Api 获取提要和评论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12860126/