Ajax的緩存機(jī)制和瀏覽器處理資源時的緩存機(jī)制是一樣的。
三條簡單規(guī)則:
只要是URL相同的GET請求,瀏覽器會使用緩存(當(dāng)然還要看服務(wù)器的Cache-Control/Expires/Last-Modified/ETag頭的設(shè)置)。
只要是POST請求,瀏覽器都不會緩存。
Https的請求,瀏覽器不會緩存(絕大數(shù)情況如此,但是也有例外,據(jù)說FF瀏覽器是例外)。
補(bǔ)充:
在URL中拼入隨機(jī)的查詢字符串可以使瀏覽器認(rèn)為這是一個新的請求,從而不使用緩存。
在Ajax的請求中設(shè)置Http頭: If-Modified-Since:0,告訴服務(wù)器要新的內(nèi)容。
補(bǔ)充說明:
一般情況下,用戶手動觸發(fā)瀏覽器刷新(windows:F5 MacOS:command+R),瀏覽器會忽略資源的Cache-Control/Expires頭的設(shè)置,而去連接服務(wù)器。無論是頁面刷新還是Ajax刷新都是如此。但我聽說,IE瀏覽器不遵循這個規(guī)則。也不知道是不是所有版本的IE瀏覽器都是這樣。如果有哪位大俠清楚這個,不吝賜教。
標(biāo)簽:咸寧 揭陽 商洛 股票 荊州 紅河 辛集 佛山
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談Ajax的緩存機(jī)制》,本文關(guān)鍵詞 淺談,Ajax,的,緩存,機(jī)制,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。