Facebook graph api 使用jsonpath的facebook批处理请求

Facebook graph api 使用jsonpath的facebook批处理请求,facebook-graph-api,facebook-javascript-sdk,jsonpath,facebook-batch-request,Facebook Graph Api,Facebook Javascript Sdk,Jsonpath,Facebook Batch Request,有了Facebook,我需要知道谁对Facebook页面上的帖子发表了评论。 我在javascript文件中使用facebook批处理请求发出两个请求,第一个用于所有帖子,第二个用于每个帖子的请求。很高兴有,如果我可以选择有一些评论的帖子 FB.api('/', 'POST', { batch: [ { // all posts from page from last year 'method': 'GET', 'name': 'posts_page_year',

有了Facebook,我需要知道谁对Facebook页面上的帖子发表了评论。 我在javascript文件中使用facebook批处理请求发出两个请求,第一个用于所有帖子,第二个用于每个帖子的请求。很高兴有,如果我可以选择有一些评论的帖子

FB.api('/', 'POST', {
  batch: [
  {
    // all posts from page from last year
    'method': 'GET',
    'name': 'posts_page_year',
    'omit_response_on_success': false,
    'relative_url': fbPageID + '/posts?since=2012-01-01&until=' + timeNow + '&limit=200000'
  },
  {
    // all post-ids from last year
    'method': 'GET',
    "relative_url": "/{result=posts_page_year:$.data.*.id[?(@.comments.count!=0)]}"
  }
]
}, function(response) {
  callback(response);
}
);
我的问题是第二批请求,它返回一个错误803。我试了一下

{
    // all post-ids from last year
    'method': 'GET',
    "relative_url": "/{result=posts_page_year:$.data.0.id}"
}
返回具有第一个post请求的对象。一切都很好。但我希望每一篇文章都是这样,而不仅仅是第一篇

{
    // all post-ids from last year
    'method': 'GET',
    "relative_url": "/{result=posts_page_year:$.data.*.id}"
}
返回错误803您请求的某些别名不存在,以及所有ID的列表

{
    // all post-ids from last year
    'method': 'GET',
    "relative_url": "/{result=posts_page_year:$.data.*.id[?(@.comments.count!=0)]}"
}
返回此错误: 803您请求的某些别名不存在:{result=posts\u page\u year:$.data.*.id[

我尝试了几乎所有的方法,需要你的帮助,因为我不知道如何解决这个问题。THX!

在Facebook上,它说:

注意,出于安全原因,过滤器和脚本JSONPath构造 在JSONPath表达式中不允许使用

这可能意味着您不能使用像?@.comments.count!=0这样的代码

我必须设置一个限制,以便每个响应现在都有一个内容限制。可以将限制设置为一个不可能的大数字。您还必须使用“自”和“直到”参数设置时间范围


我希望这对某人有所帮助。

我已经解决了这个问题。但现在,我不记得了-那是很久以前的事了。如果有人对解决方案感兴趣,请添加评论。您好,我对解决方案感兴趣:Hi@Morti,您可以在我的。
FB.api('/', 'POST', {
  batch: [
    {
      // 0: all likes from user
      'method': 'GET',
      'relative_url': 'me/likes'
    },
    {
      // 1: all user-posts from last month
      'method': 'GET',
      'relative_url': 'me/posts?since=' + timeMonthAgo + '&until=' + timeNow + '&limit=200000'
    },
    {
      // 2: all user-posts from last year
      'method': 'GET',
      'relative_url': 'me/posts?since=' + timeYearAgo + '&until=' + timeNow + '&limit=200000'
    }
  ]
  }, function (response) {
    callback(response);
  }
);