如何使用FacebookGraph API获取URL的份额和喜欢数量

时间:2015-09-21 17:59:11

标签: c# facebook facebook-graph-api facebook-fql facebook-c#-sdk

如何使用Facebook Graph API获取URL的份额和数量?有几个帖子回答了类似的问题,但每个帖子都提供了不同的方法/ fb API。

我正在使用C#SDK,我想我应该使用Graph API,因为最新的FB API不支持FQL。

This answer看起来很不错,但是海报上说,返回的股票价值是这个网址的份额和喜欢的总和,我需要单独购买。

2 个答案:

答案 0 :(得分:2)

在发布到Facebook的帖子后,您将从Facebook获得帖子ID(138885734110127_1484064888656364)。使用该帖子ID,您可以获得喜欢和评论的数量,喜欢和评论的人数以及发布的评论。我不了解股票。

在这里获取喜欢和评论的代码是:

            var fb = new FacebookClient("Your Access token here");
            var WallPost = fb.Get("138885734110127_1484064888656364");


            JObject jObj = JObject.Parse(WallPost.ToString());
            var Comments = jObj.Property("comments");
            var Likes = jObj.Property("likes");

你会进入json。希望这可以帮助。 :)

答案 1 :(得分:2)

我想我可能已经很晚了,但这里是我获取URL的分享,喜欢和评论的代码,请注意它不需要访问令牌,希望这在某种程度上有所帮助!

string url = "http://www.youtube.com";     
string QUrl = "https://graph.facebook.com/?fields=id,share,og_object{engagement{count},likes.summary(true).limit(0),comments.limit(0).summary(true)}&id=" + url;

        System.Net.HttpWebRequest Request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(QUrl);
        Request.ContentType = "text/json";     
        Request.Timeout = 10000;
        Request.Method = "GET"; 
        string content;


        using (WebResponse myResponse = Request.GetResponse())
        {
            using (System.IO.StreamReader sr = new System.IO.StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8))
            {
                content = sr.ReadToEnd();
            }
        };

        var json = JObject.Parse(content);

        var like_count = json["og_object"]["likes"]["summary"]["total_count"];

        Console.WriteLine("Like Count :" + like_count);

        var share_count = json["share"]["share_count"];

        Console.WriteLine("Share Count :" + share_count);

        var comment_count = json["og_object"]["comments"]["summary"]["total_count"];

        Console.WriteLine("Comment Count :" + comment_count);