我想知道在使用facebook API时是否有人知道我目前遇到的问题。我很高兴使用图形api或fql在短期内解决这个问题,我现在已经使用了这两个,计划在fql弃用之前查看实时订阅。
我目前正在定期检查网页的更新,其中包括对任何帖子,照片,相册,视频等的评论。
使用fql这对于主流来说很简单,因为主帖子对象包含一个updated_time
字段,当对其发表评论时会更新。然后我可以对其进行过滤并获得带有新注释的帖子,批量中的第二个查询可以获取自那时起的注释对象。这只给了我需要的东西,可以快速处理,Facebook很高兴,因为处理时间非常短。为了记录,像这样的东西在批处理中工作正常:
SELECT post_id, actor_id, created_time, updated_time, message
FROM stream
WHERE source_id = me() AND updated_time > 1433783133
SELECT id, time, post_id, fromid, text
FROM comment
WHERE post_id IN (SELECT post_id FROM #posts) AND time > 1433783133
然而,在查看相册,这些相册中的照片以及这些相册中的评论时,这成为一个真正的问题。这就是我所看到并发现的:
图表Api
查看图表API,您无法查看每篇帖子并使用since
来抓住评论 - 对于相册和照片都有一个updated_time
字段但是,在这种情况下,似乎没有足够的值来更新。
使用嵌套查询的示例:
me/albums?fields=id,created_time,updated_time,photos{id,created_time,updated_time,comments{created_time}}
{
"updated_time": "2015-05-26T19:12:18+0000",
"photos": {
"data": [
{
"updated_time": "2015-05-26T19:12:13+0000",
"comments": {
"data": [
{
"created_time": "2015-05-31T19:10:41+0000",
}
],
}
}
]
}
}
你可以看到评论的第31个created_time
,但是父母的updated_time
都没有与此内联(其他更新设置了这些值,但不是像fql中那样的评论对于流。)
这个角度的另一个缺点是,查询父母的更新时间,仍然会给我太多孩子,效率也会降低。
FQL
使用Fql几乎不可能正确获取此数据,modified
字段与图api updated_time
具有相同的问题。我希望有一个选项可以在专辑级别获取所有评论,然后在文件管理器上工作并继续工作,但是没有可行的索引字段来查询这样做。它必须是照片,当有大量的相册和照片时,这很快成为从album
>批处理时的问题。 photo
> comment
因为查看更新的数据非常慢。
这是目前我无法看到当前api的问题,我还没有进入实时订阅,但我还是没有看到相关的页面订阅?
是否有人遇到类似的问题只能从api获取页面照片的更新?如果是这样,你找到解决这个问题的方法吗?因为我很难过。
感谢任何人阅读的时间:)