IE8でXMLHTTPが正しく機能しない
-
05-07-2019 - |
質問
私のアプリケーションではxmlhttpを使用しています。これは、3秒という時間間隔の後に関数によって呼び出されます。
問題は、ChromeとMozila firefoxですべてが順調に進んでいるが、Ie8では時々動作し、I8では動作すると(いつか)間隔を設定するよりも時間がかかることです。応答が正しいことを必要とするので、今私はそれを混乱させています、ie8はxmlhttpをキャッシュし、同じ結果がそのキャッシュから表示されますので、何か他のものです。
と私はこれを行うために1つのことをしましたページにアンカーボタンを配置し、このアンカーのクリックイベントで私はその関数を呼び出しました。 クリックすると、正しく動作します。
だから、XMLHTTPに関してIE8で何か特別なことがあれば助けてください。
解決
URLのパラメーターとしてランダムハッシュを送信して、各リクエストが「異なる」ものになるようにします。ブラウザに..また、可能であれば、メタタグを使用して呼び出し元のファイルにヘッダーを出力して、キャッシュを防止します(PHPの場合):
header( "Expires: Mon, 20 Dec 1998 01:00:00 GMT" );
header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" );
header( "Cache-Control: no-cache, must-revalidate" );
header( "Pragma: no-cache" );
他のヒント
Webページの完全修飾名が、移動元のリモートAJAX URLと同じであることを確認します。
IEは、XMLHTTPRequest接続がWebページ名と同じではないサイトに接続しようとしないようにすることで、クロスサイトスクリプティングハッキングを防ぐための追加のセキュリティを提供すると思います。
XMLHTTPオブジェクトを使用して何をしているのかわかりませんが、それが役立つ場合があります。
所属していません StackOverflow