Ajax快取及解決辦法

2021-06-08 23:42:58 字數 1306 閱讀 5075

ajax快取的問題:解決辦法有如下幾種:

1、在服務端加 header("cache-control: no-cache, must-revalidate");(如php中)

2、在ajax傳送請求前加上 anyajaxobj.setrequestheader("if-modified-since","0");

3、在ajax傳送請求前加上 anyajaxobj.setrequestheader("cache-control","no-cache");

4、在 ajax 的 url 引數後加上 "?fresh=" + math.random(); //當然這裡引數 fresh 可以任意取了

5、第五種方法和第四種類似,在 url 引數後加上 "?timestamp=" + new date().gettime();

1、加個隨機數

2、在要非同步獲取的asp頁面中寫一段禁止快取的**:

response.buffer =true

response.expiresabsolute =now() - 1

response.expires=0

response.cachecontrol="no-cache"

3、在ajax傳送請求前加上xmlhttp.setrequestheader("if-modified-since","0");可以禁止快取

另乙個作者寫到:

ajax的快取是由瀏覽器維持的,對於發向伺服器的某個url,ajax僅在第一次請求時與伺服器互動資訊,之後的請求中,ajax不再向伺服器提交請求,而是直接從快取中提取資料。

有些情況下,我們需要每一次都從伺服器得到更新後資料。思路是讓每次請求的url都不同,而又不影響正常應用:在url之後加入隨機內容。

e.g.

url=url+"&"+math.random();

key points:

1.每次請求的url都不一樣(ajax的快取便不起作用)

2.不影響正常應用(最基本的)

ajax快取解決辦法

有三種辦法 1 加個隨機數 2 在要非同步獲取的asp頁面中寫一段禁止快取的 response.buffer true response.expiresabsolute now 1 response.expires 0 response.cachecontrol no cache 3 在ajax傳送...

ajax快取解決辦法

有三種辦法 1 加個隨機數 xmlhttp.open get ajax.asp?now new date gettime true 2 在要非同步獲取的asp頁面中寫一段禁止快取的 response.buffer true response.expiresabsolute now 1 respons...

Ajax快取解決辦法

看到一篇文章不錯,留著呵呵 專案有時要用一些ajax的效果,因為比較簡單,也就沒有去用什麼ajax.net之類的東西,手寫 也就實現了。第二天,有人向我報告錯誤 說是只有第一次讀取的值正常,後面的值都不正常 我除錯了一下 確實有這樣的問題,查出是因為ajax快取的問題 解決辦法有如下幾種 1 在服務...