新しいASP.NETコアアプリケーションからFacebookにユーザーをサインします。私はいくつかの理由でSDKを使用していません。すべてがうまくいっている。ユーザーをFacebookのサインオンページにリダイレクトします。 。Facebookのユーザーがサインインが、私は、リダイレクト後にブラウザからコピーし、次のURI文字列にリダイレクトします。ASP.NETコア - Facebookサインオンのリダイレクトで送信されたハッシュ文字(#)が問題を引き起こしています
http://localhost:5000/signonok?#state=testsession&access_token=bbbbtokeneeee&expires_in=510000
signonokControllerはアクティブますが、クエリのコレクションは空で、QueryStringには「?」。文字列のハッシュ文字(#)がASP.NETにさらに解析を停止させているように見えます。私は数時間にわたってHttpContextの周りをうかがい、状態、access_tokenまたはexpires_inのキー値のペアを見つけることができません。
エラーはスローされていないか、ログ出力されません。
おそらく、自分のミドルウェア機能をパイプラインに挿入することで、情報にアクセスしたり、Uriを再フォーマットすることができたと思いました。疑わしいところに私は同じ結果を得ました。
Facebookの回答を変更するよりも、私の側でこの問題を回避する方が簡単だと思います。
Javaスクリプトは、ここでは関係のないいくつかの理由から、この場合は避けたいものです。
この#文字の処理方法についてのご意見はありますか?私はそれが放出される原因となった何か間違ったことをしたか、パイプラインでUriをどのように消費するかを理解しなければならない。
乾杯...
お返事ありがとうございます。これまでのところ喜びはありません。 Microsoft.AspNetCore.Http.HttpContextにRawUrlプロパティはありません。 Microsoft.AspNetCore.Http.Extensions.UriHelper.GetEncodedUrl(this.Request);戻り値:http:// localhost:5000/signonOk? – BigTFromAZ