この記事では主に、Ajax 呼び出しにおける IE キャッシュの問題の解決策を詳しく説明します。必要な方は参考にしてください。
この記事の例 ajax 呼び出しにおける IE キャッシュの問題の解決策を分析しました。詳細は次のとおりです: ajax リクエストの呼び出し中に発見された問題: バックグラウンド リクエストは単純な .aspx ファイルであり、このページでは ajax を使用する場合のキャッシュの影響は考慮されていません。デバッグしてみると、あることが分かります。 このとき、バックグラウンドコードを使わずに直接結果を返しているので、おそらくブラウザのキャッシュの影響を受けていると思われます。ネットで検索したところ、キャッシュの問題であることが判明しました。「IEでは、XMLHttpRequestで送信されたURLが履歴と同じ場合、キャッシュが使用され、サーバーにはまったく送信されません。そのため、新たに投稿されたデータまたは新規データを取得できません」。
解決策はおおよそ次のとおりです:1. サーバー側のみを改善します
(1) 背景は単純な .aspx ファイルで、<%@ OutPutCache Location="None"%>
context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
2. クライアントのみを改善
(1) 乱数を追加するかタイムスタンプを追加してリクエストアドレスを変更しますa、乱数を追加する:var url='AjaxOperations.aspx?rdm='+Math.random()+'&action='+op;
var url='AjaxOperations.aspx?dtStamp='+new Date().getTime()+'&action='+op;
XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
or ajaxObj.sendGet(otherparameter list,...."If-Modified-Since","0"); (getメソッド) 上記は私が皆さんのためにまとめたものは、将来皆さんのお役に立てば幸いです。 関連記事:
ファイルのアップロードを実装するための Ajax および form+iframe メソッドの詳細な説明
ユーザー エクスペリエンスを向上させるための Ajax の beforeSend の使用に関する簡単な分析
Ajax 送信パラメーターの簡単な解決策特殊文字が含まれています
以上がAjax呼び出しにおけるIEキャッシュ問題の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。