IE下jquery ajax無法獲得最新數據的問題解決(IE緩存)
來源:懂視網
責編:小采
時間:2020-11-27 22:52:21
IE下jquery ajax無法獲得最新數據的問題解決(IE緩存)
IE下jquery ajax無法獲得最新數據的問題解決(IE緩存):今天修改一個bug,利用ajax查詢數據,在谷歌瀏覽器下可以獲取到最新數據,而在IE中獲得是舊數據,無法獲得最新的數據,經查資料,才發現時IE緩存再作怪。 發現此ajax請求用的get方式,每次請求的URL一模一樣,IE瀏覽器有個特殊的地方,如果每次請求的URL一
導讀IE下jquery ajax無法獲得最新數據的問題解決(IE緩存):今天修改一個bug,利用ajax查詢數據,在谷歌瀏覽器下可以獲取到最新數據,而在IE中獲得是舊數據,無法獲得最新的數據,經查資料,才發現時IE緩存再作怪。 發現此ajax請求用的get方式,每次請求的URL一模一樣,IE瀏覽器有個特殊的地方,如果每次請求的URL一

今天修改一個bug,利用ajax查詢數據,在谷歌瀏覽器下可以獲取到最新數據,而在IE中獲得是舊數據,無法獲得最新的數據,經查資料,才發現時IE緩存再作怪。
發現此ajax請求用的get方式,每次請求的URL一模一樣,IE瀏覽器有個特殊的地方,如果每次請求的URL一樣時,就會拿出緩存中已有的數據顯示在頁面上,并不會再次去查詢數據庫,所以每次顯示的都是舊數據。
解決辦法:
那就有思路了,我們可以讓它每次請求的URL不一樣,可以加一個參數,而且這個參數的值每次都不一樣,時間戳最好不過了。
代碼如下:
url: '{0}/portal/articleManager/getContents?id={1}&date={2}'.format(window.baseUrl, $("#id").val(), new Date())
其中id是有用的參數,而date參數我們不做處理就好了。 查資料得知,用post方式請求可以避免在這個問題,POST被認為是一個變動性訪問(瀏覽器認為POST的提交,必定是有改變的)。
還有一個更簡便的方法,設置:
代碼如下:
cache:false,
前提就是此請求的cache還不存在。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
IE下jquery ajax無法獲得最新數據的問題解決(IE緩存)
IE下jquery ajax無法獲得最新數據的問題解決(IE緩存):今天修改一個bug,利用ajax查詢數據,在谷歌瀏覽器下可以獲取到最新數據,而在IE中獲得是舊數據,無法獲得最新的數據,經查資料,才發現時IE緩存再作怪。 發現此ajax請求用的get方式,每次請求的URL一模一樣,IE瀏覽器有個特殊的地方,如果每次請求的URL一