ajax缓存处理
最近寫程序是發現,使用ajax的時候,有時候既然不能訪問請求頁面了,壓根就不走后臺代碼了.........
測試了很久,發現應該是緩存的問題:
?
可以在前臺異步調用是加上:
xmlHTTP.setRequestHeader("If-Modified-Since","0");
或者如果你的后臺請求頁面是一個.aspx頁面的話,而這個頁面又不考慮緩存的話就可以直接設置:
<%@ OutPutCache Location="None"%>
頁面默認情況下:
輸出緩存可位于產生請求的瀏覽器客戶端、參與請求的代理服務器(或任何其他服務器)或處理請求的服務器上
設置為None 以后則禁用緩存了.
大致想了一下原因:
其實 IE中如果XMLHttpRequest提交的URL與歷史一樣則使用緩存,根本不向服務器端提交。因此無法取到剛提交的數據或新的數據。
當然從網上也有說...可以隨機改變傳替參數的值,從而使瀏覽器不緩存,我想應該也是可以的.
測試了很久,發現應該是緩存的問題:
?
可以在前臺異步調用是加上:
xmlHTTP.setRequestHeader("If-Modified-Since","0");
或者如果你的后臺請求頁面是一個.aspx頁面的話,而這個頁面又不考慮緩存的話就可以直接設置:
<%@ OutPutCache Location="None"%>
頁面默認情況下:
輸出緩存可位于產生請求的瀏覽器客戶端、參與請求的代理服務器(或任何其他服務器)或處理請求的服務器上
設置為None 以后則禁用緩存了.
大致想了一下原因:
其實 IE中如果XMLHttpRequest提交的URL與歷史一樣則使用緩存,根本不向服務器端提交。因此無法取到剛提交的數據或新的數據。
當然從網上也有說...可以隨機改變傳替參數的值,從而使瀏覽器不緩存,我想應該也是可以的.
轉載于:https://www.cnblogs.com/ltenai/archive/2007/07/18/822368.html
總結
- 上一篇: 事件冒泡控件示例(转载)
- 下一篇: 面向对象七大设计原则