禁止ajax快取最簡單的辦法就是在js端直接產生一個隨機數了,但有時會發現此方法不適用於post了,如果我們要禁止post 提交資料的ajax快取需要怎麼處理呢,下面我整理了很多關於禁止ajax快取的例子
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相应的缓存 });
上面是我整理給大家的,希望今後對大家有幫助。
相關文章:
以上是在(ASP/PHP/JSP/html/js)中禁止ajax快取的方法集錦的詳細內容。更多資訊請關注PHP中文網其他相關文章!