淺談Ajax的緩存機(jī)制
Ajax的緩存機(jī)制和瀏覽器處理資源時(shí)的緩存機(jī)制是一樣的。
三條簡單規(guī)則:
只要是URL相同的GET請(qǐng)求,瀏覽器會(huì)使用緩存(當(dāng)然還要看服務(wù)器的Cache-Control/Expires/Last-Modified/ETag頭的設(shè)置)。
只要是POST請(qǐng)求,瀏覽器都不會(huì)緩存。
Https的請(qǐng)求,瀏覽器不會(huì)緩存(絕大數(shù)情況如此,但是也有例外,據(jù)說FF瀏覽器是例外)。
補(bǔ)充:
在URL中拼入隨機(jī)的查詢字符串可以使瀏覽器認(rèn)為這是一個(gè)新的請(qǐng)求,從而不使用緩存。
在Ajax的請(qǐng)求中設(shè)置Http頭: If-Modified-Since:0,告訴服務(wù)器要新的內(nèi)容。
補(bǔ)充說明:
一般情況下,用戶手動(dòng)觸發(fā)瀏覽器刷新(windows:F5 MacOS:command+R),瀏覽器會(huì)忽略資源的Cache-Control/Expires頭的設(shè)置,而去連接服務(wù)器。無論是頁面刷新還是Ajax刷新都是如此。但我聽說,IE瀏覽器不遵循這個(gè)規(guī)則。也不知道是不是所有版本的IE瀏覽器都是這樣。如果有哪位大俠清楚這個(gè),不吝賜教。
相關(guān)文章
ajax請(qǐng)求json數(shù)據(jù)案例詳解
最近項(xiàng)目有這樣一個(gè)需求,點(diǎn)擊六大洲,出現(xiàn)對(duì)應(yīng)的一些請(qǐng)求信息,展示在下面,當(dāng)請(qǐng)求之后,第二次點(diǎn)擊就不用再次請(qǐng)求了,究竟用代碼怎么寫呢,下面小編帶領(lǐng)大家了解了解2015-09-09MVC中基于Ajax和HTML5實(shí)現(xiàn)文件上傳功能
這篇文章主要介紹了MVC中基于Ajax和HTML5實(shí)現(xiàn)文件上傳功能的相關(guān)資料,需要的朋友可以參考下2015-10-10Ajax+Servlet實(shí)現(xiàn)無刷新下拉聯(lián)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了Ajax+Servlet實(shí)現(xiàn)無刷新下拉聯(lián)動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11