您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)Ajax與IE6緩存問(wèn)題及解決方法,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
向大家簡(jiǎn)單介紹一下Ajax與IE6緩存問(wèn)題,用ajax請(qǐng)求時(shí),如果出現(xiàn)重復(fù)的URL,瀏覽器不會(huì)向服務(wù)器發(fā)送請(qǐng)求,而是根據(jù)之前相同的URL請(qǐng)求結(jié)果返回。
Ajax與IE6緩存問(wèn)題
今天,有同事發(fā)現(xiàn)相關(guān)業(yè)務(wù)數(shù)據(jù)修改后,在IE6下還是顯示修改前的值。但在其他瀏覽器和IE7、IE8下,沒(méi)有這個(gè)問(wèn)題。
原因:用ajax請(qǐng)求時(shí),如果出現(xiàn)重復(fù)的URL,瀏覽器不會(huì)向服務(wù)器發(fā)送請(qǐng)求,而是根據(jù)之前相同的URL請(qǐng)求結(jié)果返回。原因就在于之前的請(qǐng)求及結(jié)果已經(jīng)保存在了 緩存里,如果遇到相同URL時(shí),結(jié)果是直接從緩存里取得。
解決辦法:
1、設(shè)置IE6中工具-internet選項(xiàng)-Internet臨時(shí)文件-設(shè)置-檢查每次網(wǎng)頁(yè)的較新版本-設(shè)置為每次訪問(wèn)此頁(yè)時(shí)檢查。
2、在IE發(fā)送ajax數(shù)據(jù)時(shí),發(fā)送一個(gè)隨機(jī)時(shí)間戳。即只要讓每次請(qǐng)求的URL不一樣就可以了,比如每次請(qǐng)求時(shí)在URL中加上時(shí)間的毫秒數(shù)或隨機(jī)數(shù)(new Date().getTime()或者M(jìn)ath.Random() )。
◆另外,網(wǎng)上還有很多其他的解決方法:
1.送請(qǐng)求前加上
XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
或者用post方法提交
2.服務(wù)器端禁用緩存(只是禁止了服務(wù)端緩存,不能禁止ajax緩存) .
response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0);
以上就是Ajax與IE6緩存問(wèn)題及解決方法,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。