【发布时间】:2016-02-11 12:46:10
【问题描述】:
我使用 fql 来获取如下链接统计信息:
https://graph.facebook.com/fql?access_token={token}&q="SELECT share_count, like_count, comment_count, click_count,url FROM link_stat WHERE url=http://someUrl.com"
响应是:
{
"data": [
{
"share_count": 1,
"like_count": 2,
"comment_count": 1,
"click_count": 0,
"url": "http://someUrl.com"
}
]
}
因此,由于不推荐使用 fql,因此我需要使用 graph-api 执行此操作,但我没有找到任何可以完成此工作的内容。有URL graph-api:
https://developers.facebook.com/docs/graph-api/reference/v2.5/url/
我试过了:
https://graph.facebook.com/v2.5/?access_token={token}&id=http://someUrl.com&fields=id,og_object{engagement},share
对于相同的链接响应是:
{
"id": "http://someUrl.com",
"og_object": {
"engagement": {
"count": 3,
"social_sentence": "3 people like this."
},
"id": "878377855594880"
},
"share": {
"comment_count": 0,
"share_count": 3
}
}
所以有几个问题:
它不返回 click_count
它不返回 like_count(engagement.count 下有值)。关于文档,这应该是喜欢的数量。但是该值不正确,正如您从我的 FQL 响应“like_count=2”中看到的那样,什么是正确的,但在图形 API 中“engagement.count=3”所以它不正确。
graph api 返回的comment_count 不正确。它说 0 cmets,但正如您从 FQL 响应中看到的那样,它有 1 条评论什么是正确的
graph api 返回的share_count 不正确。它说 3 份,但正如您从 FQL 响应中看到的那样,它有 1 份是正确的。
那么有什么方法可以通过图形 API 获得相同的结果(正确的结果),就像我通过 FQL 调用获得它们一样。
我发现没有 fql 的唯一解决方案是 FB Rest API,如下所示:
https://api.facebook.com/method/links.getStats?urls="http://someUrl.com"&format=json
但是这个也被弃用了。
【问题讨论】:
-
1.0 REST API 还返回了详细的统计信息,包括喜欢和 cmets。不幸的是,FB 决定将所有带有链接的社交互动合并为一个统计数据 - 分享数,这相当于 FQL 的
total_count字段 - 喜欢、分享和 cmets 的总和。作为旁注,这些数字还有另一个问题 - 似乎只计算在某个时间段内发生的交互,旧数据丢失。因此,对于某些链接,我观察到 API 返回的数量随着时间的推移而下降。这在 API 参考中没有任何解释。
标签: facebook facebook-graph-api facebook-fql