【问题标题】:Facebook Retrive Data using Graph API using c#Facebook 使用 C# 使用 Graph API 检索数据
【发布时间】:2017-09-14 12:57:46
【问题描述】:

我已经使用 c# .net 创建了桌面 Facebook 应用程序。我想检索用户的消息、帖子和聊天记录。这是检索用户所有信息的便捷方式。我已经开始使用 Facebook Graph API,但我没有得到任何示例。

谁能帮帮我?

【问题讨论】:

  • 您无法一次获得所有信息。单独调用 API 以获取您需要的数据。
  • 是的,我会根据要求调用 API,但你能给我任何链接,我可以从中找到相同的示例或工具包。并感谢重播
  • @Chandu-Indyaah : 我如何调用 API 来获取帖子的点赞数

标签: c# .net facebook


【解决方案1】:

聚会有点晚了,但无论如何:

添加对 System.Net.Http 和 Newtonsoft.Json 的引用

string userToken = "theusertokentogiveyoumagicalpowers";

using (var client = new HttpClient())
{
    client.BaseAddress = new Uri("https://graph.facebook.com");

    HttpResponseMessage response = client.GetAsync($"me?fields=name,email&access_token={userToken}").Result;

    response.EnsureSuccessStatusCode();
    string result = response.Content.ReadAsStringAsync().Result;

    var jsonRes = JsonConvert.DeserializeObject<dynamic>(result);

    var email = jsonRes["email"].ToString();
}

【讨论】:

    【解决方案2】:

    转到 developer.facebook.com -> 工具和支持 -> 选择 Graph API Explorer

    在这里你得到 FQL 查询,访问令牌

    然后用C#写代码.....

    var client = new FacebookClient();
    client.AccessToken = Your Access Token;
    
    //show user's profile picture
    dynamic me = client.Get("me?fields=picture");
    pictureBoxProfile.Load(me.picture.data.url);
    
    //show user's birthday
    me = client.Get("me/?fields=birthday");
    labelBirthday.Text = Convert.ToString(me.birthday);
    

    【讨论】:

    • FacebookClient() 是来自您添加的参考吗?
    • 我在这个项目中找到了“a”FacebookClient 类:github.com/facebook-csharp-sdk/facebook-csharp-sdk 在 nuget 中,Outercurve Foundation 将其简称为“Facebook”。还没有测试,但即将测试。
    【解决方案3】:

    【讨论】:

    • 感谢重播,但我想从 Facebook 检索信息。
    【解决方案4】:

    您可以在 Developer.facebook.com 上查看图形资源管理器工具,转到工具并选择图形资源管理器,它是一个不错的工具,可让您准确了解通过发送“GET”和“POST”方法可以获取的内容FB Graph APIs

    【讨论】:

      【解决方案5】:

      据我所知,该应用程序现在仅使用 webhook 将数据发布到数据端点(在您的应用程序中),此时您可以解析和使用它。 (不推荐使用 FQL)。这用于消息传递等。

      可以将获取请求发送到 API 以获取信息 - 就像 amt.您页面上的喜欢次数。

      FB 的文档很好地解释了您必须发送的字符串。可以使用 webclient 或您自己的 webrequests 发送请求。 https://msdn.microsoft.com/en-us/library/bay1b5dh(v=vs.110).aspx

      然后,一旦您拥有 JSON 格式页面的字符串,您就可以使用 JSON.NET 库对其进行解析。它以 NUGEt 包的形式提供。

      【讨论】:

        猜你喜欢
        • 2011-03-21
        • 1970-01-01
        • 1970-01-01
        • 2015-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-21
        相关资源
        最近更新 更多