2
  1. 我试图通过定位此 URL 来发表对特定事件的评论:https://graph.facebook.com/1466384840257158/comments
  2. 我正在传递 user_access_token
  3. 我目前对同一天的这个事件有两条评论(2014-03-29)
  4. 现在我尝试传递一个日期,它应该带来一个空的数据结果/对象,如下所示:https://graph.facebook.com/1466384840257158/comments?since=2011-01-01&until=2014-01-10
  5. 这个请求没有效果,它仍然显示我29日发表的两条评论
  6. 我在我的用户 ID/提要上尝试了相同类型的日期范围,它给了我一个空数据对象。
  7. 最后我尝试了 event-id/feed (在尝试日期过滤器之前),它给了我以下错误

.

{
    "error": {
        "message": "An unexpected error has occurred. Please retry your request later.", 
        "type": "OAuthException", 
        "code": 2
    }
}

您能否指导我有关该特定查询(point4)的日期过滤器,或者如果您有任何其他想法可以对事件的评论使用日期过滤器。

4

4 回答 4

2

评论使用基于光标的分页,因此您不能在评论端点上使用sinceor until(这些参数适用于feed端点)。

要获取某个时间范围内的评论,您必须获取从现在到时间范围开始的所有评论,f.ex。使用 https://graph.facebook.com/1466384840257158/comments?filter=stream&limit=1000+paging (filter=stream将使用时间戳对结果进行排序)。

于 2014-04-02T09:23:35.060 回答
0

您为什么不先尝试按通知过滤?...通知允许您添加参数,例如since。例如(使用 Facebook 页面):

https://graph.facebook.com/PAGEID?fields=notifications.since(2015-3-31 00:00:00).limit(250).include_read(true)&{id,created_time,updated_time,unread,object,link}&access_token=ACCESSTOKEN

一旦你得到 json 数据,循环数据,获取 ID 并发送第二个请求,但这次使用 PAGEID_POSTID 边缘。像这样的东西:

https://graph.facebook.com/PAGEID_POSTID/comments?fields=id,from{name,id},message,can_remove,created_time&limit=1000

Voahla!...没有必要阅读每条评论!...

注意 1:需要页面访问令牌以及 manage_pages 权限

注 2:使用参数/字段 include_read 获取所有通知,即使是已经阅读的

注意3:在第二个请求中,使用参数/字段“filter=stream”来排序帖子并获取以您的页面名称发表的评论

注意 4:循环后不要忘记控制异步性!

注5:Notifications重复post,使用数组避免多次读取post使用参数/字段include_read获取所有通知,即使已经阅读

于 2015-03-31T19:04:56.890 回答
0

我不知道是不是太晚了。但是,是的,它适用于图形 API 3.3 版。

例如:如果您想获得对 Facebook 页面帖子的评论,您可以这样做:

  • 您必须使用页面访问令牌
  • 获取图表请求:post_id/comments?since=some_date
于 2019-06-09T12:23:51.783 回答
0

在组 上使用自直到发表评论 如果您想使用自和直到发表评论,则不能直接用于组。因此,首先您可以将其应用于状态(提要),然后获取该提要的评论。这对我有用:

{group_id}/?fields=feed.since(08/25/2016).until(08/31/2016){from,comments{from,message}}
于 2016-08-31T16:59:47.020 回答