2017-07-07 8 views
0

私はIE11に不正な要求エラーを取得しています上のエラー400:IE11:のみ、特定のサーバー

  • サーバ:Tomcatの8.5
  • フレームワーク:Strutsの1
  • 環境:試作

  • エラートリガ:window.openを介してURLを開く( "アクセントまたは漢字でパラメータを持つアクション");

エラーはFirefoxまたはChromeでIE11を使用してのみ発生します。そしてその特定の環境においてのみ。これはTomcat 8.5でDEV環境で動作します。 Websphere 6.1の古いprod/preprod/devサーバーでも動作します。私はTomcat 8のURIEncodingコネクター・パラメーターを変更しなくても、ローカルでそれを再現することはできませんでした。

誰かに似たようなことが起こりましたか?今のところ、私が見つけた回避策は、window.openをトリガーする前にJavascriptのencodeURI関数を使用することでしたが、この特定のサーバーでのみこれが失敗する本当の理由を探しています。

IEの国際設定を変更してURLをエンコードし、セキュリティで保護されたサイトにサイトを追加しようとしましたが、エラーは解決しません。

+0

ブラウザにエラーがありますか? –

+0

ブラウザには400以外にエラーはありません。他のサーバにデプロイされた同じアプリケーションがIEで正常に動作し、他のブラウザで同じサーバが正常に動作することを覚えておいてください。 – Markos

答えて

0

DEVサーバーとPreprodサーバーが若干違っていた、DEVにはTomcat 8.5.3があった、PreprodにはTomcat 8.5.9があったが、そのバージョンにはURI、Firefox、およびChromeはサーバーに送信する前にそれらをエンコードします(そのため、これらのブラウザーでは失敗しません)。IEはURLをエンコードするオプションで指定しても、それらを送信します。したがって、IEの場合は、リクエストを送信する前にjavascriptでエンコードする必要があります。

関連する問題