如何根据有效的AccessToken和/或Facebook.FacebookClient对象获取AppID

时间:2011-11-09 17:42:43

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

我使用C# Facebook SDK使用自己的应用程序登录,我可以读取/写入/删除我需要的所有数据。

但是出于验证目的,我想基于现有的有效Access-token和Facebook.FacebookClient对象获取我当前正在使用的AppID(我在生成登录Uri时使用的AppID)。

以类似于Facebook PHP SDK的方式:$appId = Facebook->getAppId();

我的访问令牌与string.Concat(appId, "|", appSecret)

不同

3 个答案:

答案 0 :(得分:2)

如果我使用Facebook C# Sdk,我可以使用以下代码来检索我在登录时使用的appID - 如果目前我在memmory中只有AccessToken可用:

string myAccessToken = "...";
FacebookClient fc = new FacebookClient(myAccessToken);
IDictionary<string, object> resultContainer = 
          (IDictionary<string, object>)fc.Get("/app");
string retrievedAppID = resultContainer["id"] as string;

同样的结果可以直接从Graph Api Explorer通过:

获得
https://graph.facebook.com/app

如果需要,可以在Graph Api Explorer页面的右上角选择Facebook应用程序。

答案 1 :(得分:1)

Facebook C# SDK中,access_token没有解析(或解码)的地方。

当然,Facebook C# SDK api,从appIdWeb.Config类需要FacebookSettings
access_token作为FacebookSignedRequest类的字符串属性。

因此,您可以点击此链接自行完成:https://developers.facebook.com/docs/authentication/signed_request/

答案 2 :(得分:0)

你应该能够得到这样的AppId

var appId = Facebook.FacebookApplication.Current.AppId;