为每种反应获取Facebook反应total_count

时间:2016-04-17 12:28:34

标签: facebook facebook-graph-api

在Graph Api 2.6中使用新的Reactions边缘, 有没有办法获得包含每个反应的total_count的摘要?

我的意思是,像这样:

"summary": {
      "total_count": 51,
      "total_count_HAHA":23,
      "total_count_LOVE":28,
      "viewer_reaction": "NONE"
    }

只有" total_count"现在。

3 个答案:

答案 0 :(得分:16)

20531316728_10154835146021729?fields=
    reactions.type(LIKE).summary(total_count).limit(0).as(like),
    reactions.type(LOVE).summary(total_count).limit(0).as(love),
    reactions.type(WOW).summary(total_count).limit(0).as(wow),
    reactions.type(HAHA).summary(total_count).limit(0).as(haha),
    reactions.type(SAD).summary(total_count).limit(0).as(sad),
    reactions.type(ANGRY).summary(total_count).limit(0).as(angry)

答案 1 :(得分:1)

我唯一能想到的就是为每种反应类型进行多次API调用...如果限制对type = HAHA的反应,则total_count只计算HAHA。当然不是最有效的方法,但取决于你想要完成的工作......

答案 2 :(得分:0)

您可以使用嵌套请求。

请求网址应该像

https://graph.facebook.com/{id}?fields=reactions.type({reactiontype})[,reactions.type({reactiontype})] 

如果您想获得每个反应的总计数,那么您可以添加每个请求的摘要(total_count)结束。

一个例子

reations.type(LIKE).summary(totalCount)

如果您想限制数据,也可以使用limit关键字。

reactions.type(LIKE).limit(0).summary(totalCount)

最后,您可以使用"作为"重命名响应节点。关键字

reactions.type(LIKE).limit(0).summary(totalCount).as(like_count)

示例使用和响应

请求网址 https://graph.facebook.com/1230378837038354?fields=reactions.type(LIKE).limit(0).summary(total_count).as(like),reactions.type(LOVE).limit(0).summary(true).as(love)&access_token=

响应

{
   "like": {
      "data": [

      ],
      "summary": {
         "total_count": 342
      }
   },
   "love": {
      "data": [

      ],
      "summary": {
         "total_count": 165,
         "viewer_reaction": "NONE"
      }
   },
   "id": "1230378837038354"
}