JS クライアントで FB.login を使用しており、サーバーでユーザーの ID を確認したいと考えています。したがって、クライアントは facebook から signedRequest を取得し、それをサーバーに送信します。サーバーはピリオドで分割し、signedRequest の 2 番目の部分を json オブジェクトにデコードします。
サーバー側のリクエストを
https://graph.facebook.com/oauth/access_token?
client_id=YOUR_APP_ID
&redirect_uri=YOUR_REDIRECT_URI
&client_secret=YOUR_APP_SECRET
&code=CODE_GENERATED_BY_FACEBOOK
デコードされた json は次のようになります。
{"algorithm":"HMAC-SHA256","code":"2.AQCPA_yfx4JHpufjP.3600.1335646800.1-5702286|l11asGeDQTMo3MrMx3SC0PksALj6g","issued_at":1335642445,"user_id":"5232286"}
それは私が必要とするコードですか?B64 エンコードする必要がありますか? これがコードでない場合、どのコードを使用すればよいですか?
_
私が試したこと:
私が使用しようとしているリクエストは次のとおりです。
https://graph.facebook.com/oauth/access_token?client_id=295410083869479&redirect_uri=https://squaredme.appspot.com/facebookredirect&client_secret=44f1TOPSECRETbb8e&code=2.AQCPA_yfx4JHpufjP.3600.1335646800.1-5702286|l11asGeDQTMo3MrMx3SC0PksALj6g
しかし、これはエラーを返します:
{"error":{"message":"Error validating verification code.","type":"OAuthException","code":100}}
これが悪いコードを使用しているためなのか、それとも何なのかわかりません。特に、これは私のローカル開発サーバーで実行されており、squaredme.appspot.com は間違いなく私の IP に解決されません。Facebookがそれをチェックするのか、それとも何をチェックするのかはわかりません-より良いエラーメッセージが表示されると思います。方向性をありがとう!