私が直面している解決策で同様の問題を投稿してください。
preserving hash in IE
302リダイレクトの同様の要件を持つ誰かに役立つことを願っています.
リンクだけではなく、回答の重要な部分を追加する
SiteMinder
アプリケーションで認証を使用します。
認証SiteMinder
が302 redirection
成功しvalue
た/myapp/
後、. 以下のサンプルフォームwithout hash fragment
redirect

redirect
非表示の変数の値にはハッシュ フラグメントが含まれておらず、それ/myapp/
は 302 リダイレクトであるため、ハッシュ フラグメントは、アプリケーションに到達する前であっても IE によって自動的に削除され、アプリケーション コードで試しているソリューションがうまくいきません。
IE はのみにリダイレクトして/myapp/
おり、アプリのデフォルトのホームページに着陸していますhttps://ourapp.com/myapp/#/home
。
この動作を理解するのにほぼ 1 日を費やしました。
解決策は次のとおりです。
ログイン フォームの隠し変数 ( redirect
)の値を変更しwindow.location.hash
て、既存の値に追加することでハッシュ フラグメントを保持します。以下のコードに似ています
$(function () {
var $redirect = $('input[name="redirect"]');
$redirect.val($redirect.val() + window.location.hash);
});
この変更後、redirect
隠し変数はユーザーが要求した URL 値を として保存し、IE/myapp/#/pending/requests
にSiteMinder
リダイレクトします。/myapp/#/pending/requests
上記のソリューションは、3 つのブラウザすべてで正常に機能していますChrome, Firefox and IE
。
詳細な説明とこの問題の解決策を提供してくれた @AlexFord に感謝します。