背景
我有一个网络应用程序,使其用户可以在Facebook上分享单个项目(帖子)。我建立了一个Facebook应用程序,以获得一个API密钥来使用Javascript SDK。它运作良好,我在Facebook App Insights中看到了共享统计数据。
人们在Facebook上分享的项目是照片和视频,我想跟踪总观看次数,包括Facebok股票。有可能吗?
我尝试了什么
/{post_url}
/{object_id}/insights/post_impressions
(*)文档为该指标指定"Only page posts"
,因此我想这毕竟不可能,因为这些帖子不在我的应用页面Feed中。
变通方法
average_views = shares x A + comments x B + likes x C
,但这似乎非常近似,我不知道A,B和C最合适的值。感谢您的帮助
答案 0 :(得分:-1)
关键字
使用开放图API。这是一个现实的例子,询问有多少人喜欢“可口可乐”。
https://developers.facebook.com/tools/explorer/?method=GET&path=cocacola%3Ffields%3Dlikes
归结为:
https://graph.facebook.com/cocacola?fields=likes
由于浏览器的CORS策略,您可以在AJAX GET中执行此操作。
结果是:
{
"likes": 71717854,
"id": "40796308305"
}
对于网址
此外,http://api.facebook.com/restserver.php?method=links.getStats&urls=http://code.shouttoday.com会向您显示所有数据,例如“分享计数”,“赞计数”和“评论计数”以及所有这些数据的总和。
根据需要更改网址(即http://code.shouttoday.com)。
这是正确的网址,我的结果是正确的。
PHP Ajax请求
你可以显示Facebook分享/喜欢这样的数量:(经过测试和验证)
$url = http://code.shouttoday.com // You can use inner pages
$rest_url = "http://api.facebook.com/restserver.php?format=json&method=links.getStats&urls=".urlencode($url);
$json = json_decode(file_get_contents($rest_url),true);
echo Facebook Shares = '.$json[0][share_count];
echo Facebook Likes = '.$json[0][like_count];
echo Facebook Comments = '.$json[0][comment_count];