2013-05-07 7 views
9

私のWebアプリケーションが生産現場に配備されているため、複数のリダイレクトURIを指定して、私はまた、地元の発展を実行する必要があります。また、私はさまざまなテスト活動を行ういくつかのテストサーバーを持っています。 Facebook OAuth2のこれらのURIをすべて指定したいと思います。 Google OAuth2では問題はありません。必要なだけ多くのリダイレクトURIを指定できます。するFacebookのOAuth2

Facebookでこれが可能ですか?どうやって?私はFacebookに統合するために "Facebook Login with Website"オプションを使用しています。

現在、私は取得しています:

{ 
    error: { 
     message: "Invalid redirect_uri: Given URL is not allowed by the Application configuration.", 
     type: "OAuthException", 
     code: 191 
    } 
} 

答えて

1

あなたは代わりにあなたの要件ごとに異なるユースケースごとに異なるアプリケーションを作成する必要があります。これはあなたが対処しなければならない1つの奇妙な制限です。

ヘロク(パートナークラウドサービスプロバイダ)のGetting Started Guideは、開発と一緒にアプリケーションを使ってworking locallyの同じ作業を提案しています。

+2

この答えは、おそらく古くなって、「有効なOAuthのは、URIをリダイレクト」について@benからの回答は、(より詳細な手順については、その答えで第一のコメントを参照)動作します。で – neonstalwart

28

これを追加したときはわかりませんが、Facebookアプリの[詳細設定]の[有効なOAuthリダイレクトURI]フィールドが見つかりました。私はちょうどそこにhttp://localhostを入れて、私のlocalhost上の任意のURIにリダイレクトできるように見えます。もう重複アプリはありません!

+4

さらに詳しい情報:https://developers.facebook.com/docs/facebook-login/security/ - は含まれています:「**のOAuthのホワイトリストは、可能な場合はリダイレクトURLを指定してください。**あるアプリのURLの徹底的なセットを指定します。この設定は空のままにしておくと、アプリのドメイン内のすべてのURLにOAuthアクセストークンが送信される可能性があります(この設定は[設定]> [詳細設定]> [セキュリティ]セクションにあります)これにより、アプリドメインにオープンリダイレクトやXSSの脆弱性が存在する場合、アプリケーションはアクセストークンの盗難に対して脆弱になります。 –

+2

これは私のためにも機能することが確認できます。この新しい設定を使用することで、ライブとローカルホストのURLに同じfacebookアプリを使用できるようになりました。 –

+1

Facebookのログイン機能を統合するためにfacebookアプリを使用するときにfacebookでドメイン名を使用できるように、「Valid OAuth redirect URIs」機能を無効にする方法を探していました。 – Phantom007

関連する問題