2012-02-13 8 views
1

Facebookにログインするようにユーザーに促すボタン付きのログイン画面があるアプリがあります。 統合の認証部分がうまく動作します。返されたcookie変数を解析して、userIDを取得しました。次のステップは、ユーザー情報を取得することです。ColdFusion Facebookインテグレーション

私はあなたが(あなたのクッキーに保存されている)、解析されたsigned_requestを得れば、あなたが取得する (FacebookのユーザーIDである)USER_IDとoauth_token(別名access_tokenは) を使用することができます

を言い、このstackoverflowの記事Difficulty parsing string with Facebook one click sign on and ColdFusionを見つけましたグラフAPIまたはFQLを介して必要な情報。

しかし、どのようにポスターが話すaccess_tokenを取得していますか?クッキー変数にはありません(私はとにかく見ることができます)。

このようなnoobのために申し訳ありません。私はツイッターが楽になりました。 Facebookは痛みです。

答えて

2

https://developers.facebook.com/docs/authentication/はあなたの友人です。サーバー側のフローのセクションをお読みください。

ユーザーを押すが許可する場合は、アプリが許可されている」OAuthのダイアログでは、認証コードとREDIRECT_URIパラメータで渡されたURLに(HTTP 302を介して)ユーザーのブラウザをリダイレクトします:付き

http://YOUR_URL?code=A_CODE_GENERATED_BY_SERVER このコードを手元に置くと、次のステップであるアプリの認証に進み、API呼び出しを行う必要があるアクセストークンを取得することができます。

アプリを認証するには、認証コードとアプリシークレットをグラフAPIのトークンのエンドポイントは、上記のredirect_uriと全く同じです - https://graph.facebook.com/oauth/access_tokenにあります。アプリのシークレットはfデベロッパーアプリケーションを使用してください。配布するコードには、他の人と共有したり、埋め込んだりしないでください(これらのシナリオでは、クライアント側のフローを使用する必要があります)。

https://graph.facebook.com/oauth/access_token? のclient_id = YOUR_APP_ID & REDIRECT_URI = YOUR_URL & client_secret = YOUR_APP_SECRET &コード= THE_CODE_FROM_ABOVE あなたのアプリが正常に認証され、ユーザから認証コードが有効であれば、認証サーバは、アクセストークンが返されます:に加えて

をアクセストークン(access_tokenパラメータ)には、トークンが期限切れになるまでの秒数(expiresパラメータ)が含まれます。トークンが期限切れになったら、新しいコードとaccess_tokenを生成するために上記の手順を再実行する必要があります。ただし、ユーザーが既にアプリを承認している場合は、再度コードを入力する必要はありません。有効期限が無制限のアクセストークンが必要な場合(アプリを使用していないユーザーのために行動するなど)、offline_access権限をリクエストできます。 "

関連する問題