Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook 使用Graph API获取提要中帖子的反应计数_Facebook_Facebook Graph Api - Fatal编程技术网

Facebook 使用Graph API获取提要中帖子的反应计数

Facebook 使用Graph API获取提要中帖子的反应计数,facebook,facebook-graph-api,Facebook,Facebook Graph Api,我正在尝试使用Facebook的graph API来访问一个组的提要中的每个帖子,以及每个帖子的每种类型的反应数 当我尝试使用一种反应类型时,效果很好: [GROUP_ID]/feed/?fields=message,from,created_time,updated_time,reactions.type(LOVE).limit(0).summary(total_count)&limit=1 但是,当我添加多个反应类型时,我收到一个错误 [GROUP_ID]/feed?fields=

我正在尝试使用Facebook的graph API来访问一个组的提要中的每个帖子,以及每个帖子的每种类型的反应数

当我尝试使用一种反应类型时,效果很好:

[GROUP_ID]/feed/?fields=message,from,created_time,updated_time,reactions.type(LOVE).limit(0).summary(total_count)&limit=1
但是,当我添加多个反应类型时,我收到一个错误

[GROUP_ID]/feed?fields=message,from,created_time,updated_time,reactions.type(LOVE).limit(0).summary(total_count),reactions.type(WOW).limit(0).summary(total_count)&limit=1
给我:

{
  "error": {
    "message": "Syntax error \"Field reactions specified more than once. This is only possible before version 2.1\" at character 139: message,from,created_time,updated_time,reactions.type(LOVE).limit(0).summary(total_count),reactions.type(WOW).limit(0).summary(total_count)",
    "type": "OAuthException",
    "code": 2500,
    "fbtrace_id": "GzMCG2dRioK"
  }
}
我遵循了中的语法,但是它似乎只在尝试访问单个帖子的反应时起作用,而不是在提要中的每个帖子。是使用API获取提要中每个帖子的帖子ID,然后对每个帖子进行单独调用的唯一选项吗?

尝试以下方法:

[GROUP_ID]/feed?fields=message,from,created_time,updated_time  
,reactions.type(LOVE).limit(0).summary(total_count).as(reactions_love)
,reactions.type(WOW).limit(0).summary(total_count).as(reactions_wow)
&limit=1

然后,您可以找到包含所需数据的
reactions\u love
reactions\u wow
字段,而不是
reactions
。您可以添加所有类型,为了更好地概述,此处将其缩短;)

您可以通过询问以下内容来解决别名问题,并且仍然可以收到您需要的内容:

    insights.metric(post_reactions_by_type_total).period(lifetime)

(我在这里找到的:)

当然,也是这样。无论您是访问单个帖子,还是从提要边缘获取它们,这都无关紧要。@CBroe我不理解您的评论,很抱歉——您是说对每个帖子进行单独的API调用,而不是使用提要边缘,其工作方式与使用提要边缘相同吗?谢谢提要边缘返回post对象,因此,当从该边缘请求数据时,您可以请求与单个post对象相同的字段。@CBroe是的,我理解,但是,当我调用单个post上的多个反应时,它是有效的,但当我通过提要边缘调用post对象时,它不起作用,并且打印出一个语法错误。那是因为你现在完全忽略了你自己链接到的另一个问题的要点。。。要在一个请求中查询多个反应类型,您需要使用别名…我已经尝试过,但它不起作用,``{“error”:{“message”:(#100)未知字段:reactions_love,reactions_wow.,“type”:“OAuthException”,“code”:100,“fbtrace_id”:“flgfsxasbo”}``这是我的代码:Connection myFeed=facebookClient.fetchConnection(“1540653099566488”+”/feed),JsonObject.class,Parameter.with(“fields”,“reactions.type(LOVE).limit(0).summary(total_count).as(reactions_LOVE)”+“,reactions.type(WOW).limit(0).summary(total_count).as(reactions_-wow);“1540653099566488”是组id,此代码使用page_id查找,但不适用于组提要调用发生的组问题,仅适用于page提要调用不适用于page提要调用,plz帮助似乎在组上字段别名不起作用('as'))。如果没有,一切都很好,但你只能得到一种类型的反应,这不是背后的想法。我必须更正我的评论。别名只可能出现在帖子id上,而不是在提要端点上。提要上的别名可能是RFE。但现在你必须迭代id,并使用abo提到的字段请求每个idve。