ajax緩存有好處,但也有壞處,緩存有時候會導致誤操作,影響用戶體驗,若你的WEB項目不需要ajax緩存功能,可按下述方法來禁止ajax緩存。
一、在ASP中禁止ajax緩存:
'放在ASP網頁最開頭部分
Response.expires=0 Response.addHeader("pragma","no-cache") Response.addHeader("Cache-Control","no-cache, must-revalidate")
二、在PHP中禁止Ajax緩存:
//放在PHP網頁開頭部分 header("Expires: Thu, 01 Jan 1970 00:00:01 GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache");
三、在JSp中禁止ajax緩存:
//放在JSP網頁最開頭部分 response.addHeader("Cache-Control", "no-cache"); response.addHeader("Expires", "Thu, 01 Jan 1970 00:00:01 GMT");
四、通過給網頁添加隨機字符強制更新:如
var url = 'http://url/'; url += '?temp=' + new Date().getTime(); url += '?temp=' + Math.random();
五、若是靜態HTML,可添加HTTP headers頭禁止緩存,比如:
<meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="Cache-Control" content="no-cache, must-revalidate" /> <meta http-equiv="expires" content="Thu, 01 Jan 1970 00:00:01 GMT" /> <meta http-equiv="expires" content="0" />
六、可以在XMLHttpRequest發送請求之前加上以下代碼禁止ajax緩存:
XMLHttpRequest.setRequestHeader("If-Modified-Since","0"); XMLHttpRequest.send(null);
七、jQuery ajax Load禁止
在jQuery提供一個防止ajax使用緩存的方法,把下面的語句加在head的javascript文件裡,就可以解決問題。
$.ajaxSetup ({ cache: false //關閉AJAX相應的緩存 });
小結,不過現在都是使用jquery ajax了我們如果不希望緩存可以直接設置 cache: false 這樣可以解決post ,get等提交數據方式哦。