2011-11-09 11 views
1

私は自分のアプリケーションにC# Facebook SDKを使用してログインしています。必要なすべてのデータを読み書きできます。有効なAccessTokenおよび/またはFacebook.FacebookClientオブジェクトに基づいてAppIDを取得する方法

妥当性確認のために、既存の有効なAccess-tokenとFacebook.FacebookClientオブジェクトに基づいて、私が現在使用しているAppID(ログインUriを生成するときに使用したAppID)を取得したいと思います。 FacebookのPHP SDKのように同様の方法で

:私のアクセストークンがFacebook C# SDKstring.Concat(appId, "|", appSecret)

答えて

2

私はFacebook C# Sdkを使用している場合、私はappIDがを取得するには、次のコードを使用することができます同じ結果をすることができ

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

:私はmemmoryでのみ利用可能AccessTokenしている現時点であれば - 私がでたときにlogingを使用しました希望のFacebookアプリケーションがグラフアピExplorerのページの右上の部分で選択された場合

https://graph.facebook.com/app 

:経由Graph Api Explorerから直接得ました。

1

ようにされていません$appId = Facebook->getAppId();

、どこそのaccess_tokenパース(またはデコード)ノーがあります。

当然ながら、Facebook C# SDKpiの場合、appIdWeb.ConfigからFacebookSettingsまでです。
access_tokenとして、FacebookSignedRequestクラスの文字列プロパティとして指定します。

だから、あなたはそれを自分で行うには、このリンクをたどることがあります。https://developers.facebook.com/docs/authentication/signed_request/

+0

情報ありがとうございますが、私は別の解決策を見つけました。 –

0

あなたはこのようなAppIdを得ることができる必要があります:

var appId = Facebook.FacebookApplication.Current.AppId; 
+0

残念ながら、これは、ログインを行うAppDomain(evt。Process)のFacebookApplication.Currentを初期化する場合にのみ機能します。 Else - >私が説明したように、私はAccessトークンを使うことができますが、FacebookApplication.Currentインスタンスは利用できません。 –

関連する問題