gpt4 book ai didi

facebook - 将 Facebook Requests 2.0 与 C# SDK 结合使用

转载 作者:行者123 更新时间:2023-11-30 05:22:03 25 4
gpt4 key购买 nike

我正在尝试使用 SDK 更新书签计数字段,但尚未成功。

有人可以告诉我需要实例化哪些类来执行类似于以下链接的操作:

http://developers.facebook.com/blog/post/464

注意:

该链接演示了如何设置书签计数和删除它。我希望能够对 SDK 执行相同的操作,如有任何帮助,我们将不胜感激。

最佳答案

为此,首先您需要获取应用的访问 token :

    private string GetAppAccessToken() {

var fbSettings = FacebookWebContext.Current.Settings;

var accessTokenUrl = String.Format("{0}oauth/access_token?client_id={1}&client_secret={2}&grant_type=client_credentials",
"https://graph.facebook.com/", fbSettings.AppId, fbSettings.AppSecret);

// the response is in the form: access_token=foo
var accessTokenKeyValue = HttpHelpers.HttpGetRequest(accessTokenUrl);
return accessTokenKeyValue.Split('=')[1];
}

关于上述方法需要注意的几点:

  • 我使用 .Net HttpWebRequest 而不是 Facebook C# SDK 来获取应用程序 access_token,因为(从版本 5.011 RC1 开始)SDK 抛出 SerializationException。 SDK 似乎期望来自 Facebook 的 JSON 响应,但 Facebook 以以下形式返回访问 token :access_token=some_value(这不是有效的 JSON)。
  • HttpHelpers.HttpGetRequest 只是使用 .Net 的 HttpWebRequest。您也可以使用 WebClient,但无论您选择什么,您最终都希望发出此 http 请求:

    获取 https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&client_secret=YOUR_APP_SECRET&grant_type=client_credentials HTTP/1.1主办方:graph.facebook.com

现在您已经有了获取应用程序 access_token 的方法,您可以按如下方式生成应用程序请求(这里我使用 Facebook C# SDK):

public string GenerateAppRequest(string fbUserId) {
var appAccessToken = GetAppAccessToken();
var client = new FacebookClient(appAccessToken);
dynamic parameters = new ExpandoObject();
parameters.message = "Test: Action is required";
parameters.data = "Custom Data Here";

string id = client.Post(String.Format("{0}/apprequests", fbUserId), parameters);
return id;
}

同样,您可以按如下方式检索用户的所有应用请求:注意:您可能不想返回“动态”,但为了简单起见,我在这里使用它。

   public dynamic GetAppRequests(string fbUserId) {
var appAccessToken = GetAppAccessToken();
var client = new FacebookClient(appAccessToken);

dynamic result = client.Get(String.Format("{0}/apprequests", fbUserId));
return result;
}

希望对您有所帮助。

关于facebook - 将 Facebook Requests 2.0 与 C# SDK 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5931953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com