facebook图表api sharedpost从共享的页面获取喜欢的数量

时间:2017-05-19 10:23:20

标签: json facebook facebook-graph-api

我使用sharedpost端点检索共享帖子的页面,如下所示:

{post_id}/sharedposts?fields=likes.summary(1),id,created_time,from.summary(1)&limit=1500

这将返回如下数据:

{
  "id": "{sharedpost_id}",
  "created_time": "2017-05-13T23:01:51+0000",
  "from": {
    "name": "Page that shared",
    "id": "Id of page that shared"
  },
  "likes": {
    "data": [
    ],
    "summary": {
      "total_count": 0,
      "can_like": false,
      "has_liked": false
    }
  }
}

现在有些帖子得到了大量的共享,所以我想只按超过一定数量的喜欢的页面过滤共享。

现在我可以再次打电话给api,询问有多少喜欢,但我希望能在同一个请求中做到这一点。

所以期望的输出是:

 {
  "id": "{sharedpost_id}",
  "created_time": "2017-05-13T23:01:51+0000",
  "from": {
    "name": "Page that shared",
    "id": "Id of page that shared"
    "likes: : "Likes of the page that shared"
  },
  "likes": {
    "data": [
    ],
    "summary": {
      "total_count": 0,
      "can_like": false,
      "has_liked": false
    }
  }
}

所以对于包含在from。中的页面。

这可能吗?

提前致谢!

1 个答案:

答案 0 :(得分:2)

可以使用Field Expansion完成:

/post-id/sharedposts?fields=from{name,fan_count}

如果您不仅需要针对单个帖子,而且针对网页Feed中的所有帖子,您还可以将其“提升一级”,如下所示:

/page-id/feed?fields=sharedposts{from{name,fan_count}}

我不确定这是否仍然有效,如果您还获得退回用户的共享帖子 - 在这种情况下可能会抛出错误,fan_count不是现有字段在用户对象上 这仅适用于已登录到您的应用的用户共享的帖子,并且授予了user_posts权限(因为只有这样才能看到这些帖子首先显示在共享帖边缘) - 所以如果这样不适用于您的情况,一切都会好的;否则我建议你在依赖它之前测试这个案例。