3

私はFacebookのc#SDKを使用してユーザーを認証しています。しかし、FB.ui JSメソッドをクライアント上で使用したいと思っています。 Facebook JS SDKのc#SDKから既に受け取ったaccess_tokenを "再利用"する方法はありますか?私はFB.Loginを呼びたくはありません。私は既にサーバー側でユーザーを認証しているからです。Facebook JS SDKのサーバーからAccess_Tokenを再利用

+0

なぜ[ 'FB.getLoginStatus()'](http://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/)を使用していませんか?少なくともこれは、API呼び出しを行うときにユーザーが*まだ*ログインしていることを保証します。 – ifaour

+0

返信ありがとうございます。 FB.getLoginStatus()は、FB.loginを呼び出さなかったため、常にauth応答を返しません。私の問題は異なります - 私は正常にOAuthを使用して "サーバー上の"ユーザーを記録し、クライアント上のいくつかのフォームフィールドに入れることができる有効なアクセストークンを持っています。私が必要とするのは、FB.loginで再度ログインする必要なく、FB.ui APIコールを行うことです。 FB.loginで再びログインしないと、FB.ui APIは動作していますが、ページに埋め込まれた素敵なfacebookポップアップの代わりに標準ポップアップでダイアログを表示しています。私がFB.loginを呼び出すと、いくつかのログインのリダイレクト/ポップアップをユーザに気にします。 – Edgar

+0

このオプションは最新のjs-sdkとphp sdk 3.1.1で行われています。ここでは、1つのsdkを使ってログインし、他の人の情報にアクセスすることができます.. Facebookには公式バージョンのC#SDKがありません。 PHP SDKでどのように最新の変更が行われたかを確認して、ベースのFacebookのクラスを書き直すことができます。 – Vijay

答えて

0

access_token文字列を非表示のフィールドに置き、javascriptで値を取得してJS APIメソッドに渡します。

+0

実際の質問はJS APIメソッドにどのように渡すかです。 – Henrik

+0

隠しフィールドの値を取得し、それをローカルのjavascript変数に格納することによって。 – alaasdk

+0

残念ながら、私は使用する必要があるAPI呼び出し(UIダイアログapprequests)に渡すことができないことを知りました。 – Henrik

0
FB.getLoginStatus(function(response) { 
    if (response.authResponse) { 
     fbUserId = response.authResponse.userID; 
     token = response.authResponse.accessToken; 

    } else { 
     fbUserId = 0; 
    } 
    }); 

you will get access token 
関連する問題