2011-09-15 13 views
7

私たちはFacebook Javascript SDKを使用してユーザーを認証しています。Facebookの署名付きリクエストからアクセストークンを取得するにはどうすればよいですか?

ユーザーが認証されると、ユーザーはfbsr_ <のapp_id >という署名付きリクエストを含むCookieを取得します。

次に、AJAXを使用してサーバーに情報を投稿します。サーバーは、署名された要求にクッキーを受信しますが、サーバーはクッキーに署名要求(変更のpython SDK)を解析するとき、それはとしてJSONオブジェクトをデコード:

 
{ 
    "algorithm": "HMAC-SHA256", 
    "code": "2.AQDBJ3-ZpURb9P4T.3600.1316037600.1-786359552|BNK6FGOAkvMs7slboQMSIEJYDWc", 
    "issued_at": 1316031333, 
    "user_id": "786359552" 
} 

これはsigned request documentationは我々言うことに反しています取得する必要があります。

サーバーはアクセストークンを必要とするため、GraphAPIで追加の情報を取得できます。

署名付きリクエストからアクセストークンを取得するにはどうすればよいですか?

+3

答えはここにある: [http://facebook.stackoverflow.com/questions/7201521/problem-getting-access-token-after-migrating-to -oauth-2-0] [1] [1]:http://facebook.stackoverflow.com/questions/7201521/problem-getting-access-token-after-migrating-to-oauth- 2-0 – sbaechler

+0

ありがとうございました、そのリンクは私の問題を解決しました。 – Eric

答えて

2

javascript sdkで新しいoauth2ワークフローを使用すると、ユーザートークンを使用できます。あなたはあなただけのグラフを照会するためにあなたのバックエンドにその背中を渡すことができ、トークンを持っていたら、あなたはこの

FB.getLoginStatus(function(response) { 

       if (response.status === 'connected') { 

       alert(response.authResponse.accessToken); 

       } 
     }); 

ようなもので、トークンを見つけることができます認証した後

+0

OPが眠っている理由は間違いありません! – BlackDivine

+0

この回答は質問された質問に対処していないためです。答えは、私の質問へのコメントで提供されました。 – Eric

+0

私は信頼できないクッキー設定で同じ問題を抱えていました。このソリューションは私のために働いた。 – Houman

1

正しいものは次のとおりです。

FB.getLoginStatus(function(response) { 

      if (response.status === 'connected') { 

      alert(response.session.access_token); 

      } 
    }); 
関連する問題