您的位置:極速下載站→ 資訊首頁(yè) → 軟件教程 → 電腦軟件教程 → 谷歌瀏覽器準(zhǔn)備強(qiáng)推緩存技術(shù) 即便網(wǎng)站聲明禁止緩存也會(huì)被自動(dòng)忽略
時(shí)間:2023-12-06 15:52:02 作者:無(wú)名 瀏覽量:56
谷歌瀏覽器的緩存技術(shù)有助于讓用戶無(wú)需每次加載頁(yè)面都重復(fù)下載資源,也就是可以提高資源的使用效率進(jìn)而提升網(wǎng)頁(yè)的加載速度,當(dāng)然也讓用戶需要返回頁(yè)面時(shí)直接按后退按鈕就行,而不是重新從服務(wù)器上請(qǐng)求資源。
目前多數(shù)網(wǎng)站都支持緩存后退功能,不過有些網(wǎng)站在 HTTP 標(biāo)頭里設(shè)置了 Cache-Control: no-store 禁止瀏覽器緩存,避免用戶后退時(shí)泄露敏感數(shù)據(jù)或重復(fù)請(qǐng)求某些數(shù)據(jù)。
現(xiàn)在谷歌正在對(duì) Chrome 瀏覽器的前進(jìn)和后臺(tái)緩存 (往返緩存,即 BFCache) 行為進(jìn)行重大改進(jìn),簡(jiǎn)單來(lái)說就是谷歌準(zhǔn)備對(duì)網(wǎng)站進(jìn)行強(qiáng)行緩存,無(wú)論是否設(shè)置了禁止緩存。
谷歌工程師表示,bfcache 可以將整個(gè)頁(yè)面都保存在內(nèi)存中,如果用戶決定返回,那么瀏覽器可以輕松從緩存里恢復(fù)頁(yè)面。
現(xiàn)在谷歌的計(jì)劃是直接忽略 Cache-Control: no-store 標(biāo)頭,無(wú)論網(wǎng)站是否聲明禁止緩存都會(huì)被緩存,從而為用戶帶來(lái)更好的體驗(yàn)。
對(duì)開發(fā)者來(lái)說這是個(gè)問題,因?yàn)樘貏e聲明了這個(gè)標(biāo)頭就是想要禁止瀏覽器緩存,沒想到現(xiàn)在谷歌出爾反爾,強(qiáng)行緩存可能會(huì)導(dǎo)致某些敏感數(shù)據(jù)泄露或者訪問某些過時(shí)的數(shù)據(jù)。
針對(duì)這類問題谷歌正在 Chrome 測(cè)試版中進(jìn)行測(cè)試,希望收集開發(fā)者的反饋,用來(lái)評(píng)估 bfcache 強(qiáng)行緩存帶來(lái)的結(jié)果。
Opera 瀏覽器開發(fā)者 Daniel Bratell 對(duì)此評(píng)論稱,這似乎是一個(gè)觸及敏感區(qū)域的問題,我不確定這在現(xiàn)實(shí)世界中會(huì)如何發(fā)展,即使禁止緩存標(biāo)頭可能會(huì)被過度使用也不應(yīng)該徹底禁止無(wú)緩存技術(shù)。
另外需提醒的是 bfcache 并不是 HTTP 緩存,從某些方面來(lái)說,no-store 只是聲明禁止瀏覽器的 HTTP 緩存,而不是禁止 bfcache 緩存,開發(fā)者不應(yīng)該將 CCNS 標(biāo)頭解釋為頁(yè)面不會(huì)被 BFCached 的承諾。
Daniel Bratell 提醒開發(fā)者們密切關(guān)注 Chromium 項(xiàng)目的這個(gè)變化。