2017-04-23 3 views
0

私は、このtutorialに続いてasp.netコアを使用してFacebookのログインが必要なプロジェクトに取り組んでいます。Asp.net core Facebookの外部ログインを使用すると正しくないredirect_url

私はUbuntu VPSにすべてを配備しています。 kestrelサーバーは完全なWebサーバーではないので、私はHaproxyをhttps(443)でリッスンし、ポート1080(http)上のasp.netコアアプリケーションにリッスンします。私のウェブサイトにアクセスしてFacebookログインボタンをクリックすると、エラーメッセージフォームが表示されます。Facebook:

URLブロック:このリダイレクトは、アプリケーションのクライアントOAuth設定でホワイトリストに登録されていないため失敗しました。クライアントとウェブのOAuthログインが有効になっていることを確認し、すべてのアプリドメインを有効なOAuthリダイレクトURIとして追加します。

パラメータREDIRECT_URIがHTTPあるので、私は、このエラーメッセージが表示されました://代わりにFacebookアプリの設定から予想HTTPSの。

これを修正する方法はありますか?

答えて

0

私はそれを考え出した。 まず、このパッケージMicrosoft.AspNetCore.HttpOverridesを設置する必要があります。 はその後

app.UseFacebookAuthentication(...) 

あなたはhere詳細を見つけることができます行の前のファイルに

app.UseForwardedHeaders(new ForwardedHeadersOptions 
     { 
      ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto 
     }); 
app.UseHttpMethodOverride(); 

Startup.cs

をコードのこの部分を置きます。

+0

これは、 'app.UseIISIntegration()'を使用していない場合にのみ必要です。すでにフルヘッダーが登録されています。 – Tseng

+0

@Tseng私のProgram.csには 'host.UseIISIntegration()'があります。あなたはそのコード行をどこに置いていますか? – chikien276

関連する問題