日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

浏览器禁止缓存讲解

發(fā)布時(shí)間:2023/12/14 HTML 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浏览器禁止缓存讲解 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 瀏覽器禁止緩存
    • 1、什么是瀏覽器緩存?
    • 2、網(wǎng)站緩存有什么用?
    • 3、為什么要禁用瀏覽器緩存
  • 場(chǎng)景:
  • 解決方案:
  • 總結(jié):

瀏覽器禁止緩存

1、什么是瀏覽器緩存?

瀏覽器緩存(Browser Caching)是為了節(jié)約網(wǎng)絡(luò)的資源加速瀏覽,瀏覽器在用戶磁盤上對(duì)最近請(qǐng)求過(guò)的文檔進(jìn)行存儲(chǔ),當(dāng)訪問(wèn)者再次請(qǐng)求這個(gè)頁(yè)面時(shí),瀏覽器就可以從本地磁盤顯示文檔,這樣就可以加速頁(yè)面的閱覽。
瀏覽器緩存主要有兩類:緩存協(xié)商:Last-modified ,Etag 和徹底緩存:cache-control,Expires。

2、網(wǎng)站緩存有什么用?

在瀏覽網(wǎng)頁(yè)過(guò)程中網(wǎng)站開(kāi)發(fā)人員為了給用戶帶來(lái)更佳的瀏覽體驗(yàn),使網(wǎng)站加載快速高效往往會(huì)在瀏覽器本地也就是設(shè)備上面存儲(chǔ)緩存文件,因?yàn)榫W(wǎng)站或者web應(yīng)用并不是實(shí)時(shí)大量?jī)?nèi)容的更新的,而是多數(shù)內(nèi)容基本變化很小,因此在本地存儲(chǔ)一部分文件,這樣就不需要每次都重新加載全部的網(wǎng)站或者web應(yīng)用信息,節(jié)省時(shí)間、流量,帶來(lái)更佳的訪問(wèn)體驗(yàn)。

3、為什么要禁用瀏覽器緩存

在提升訪問(wèn)速度,節(jié)省流量的同時(shí),保存緩存文件肯定會(huì)占據(jù)一定的設(shè)備存儲(chǔ)空間,因此有些人在不需要追求時(shí)間流量的節(jié)省的時(shí)候,可以選擇禁用瀏覽器緩存,這樣瀏覽器不會(huì)在設(shè)備本地保存文件節(jié)省了存儲(chǔ)空間。

場(chǎng)景:

部分項(xiàng)目在打包上線后,因?yàn)椴幌M行﹉tml緩存。但html的文件名字不會(huì)發(fā)生改變,就不會(huì)重新進(jìn)行加載,造成頁(yè)面故障

解決方案:

1.使用js向url添加隨機(jī)參數(shù)(注意:若為hash模式,則隨機(jī)參數(shù)需要放置在 # 前)

但是這樣做也有一個(gè)弊端,因?yàn)榫彺婵梢詼p少對(duì)服務(wù)器的直接訪問(wèn),減少服務(wù)器的壓力。瀏覽器不讀取緩存里的內(nèi)容之后,每次都會(huì)訪問(wèn)服務(wù)器,這樣就會(huì)增加服務(wù)器的壓力。所以應(yīng)根據(jù)情況使用。

if (!window.name) {location.href += "?random=" + Date.now();window.name = "reloaded"; }

2.在html的head中添加meta(瀏覽器仍希望緩存的話無(wú)效)

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="0" />

3.后端設(shè)置get請(qǐng)求的response請(qǐng)求頭

response.setDateHeader("Expries", -1); response.setHeader("Cache-Control", "no-cache"); response.setHeader("Pragma", "no-cache");

4.在瀏覽器中設(shè)置

F12打開(kāi)控制臺(tái)—>Network---->Disable cache 打鉤

F12—>F1—>network ----> Disable cache(while DevTools is open) 打鉤

5.更多工具選項(xiàng) 或 ctrl+shift+delete 或 ctrl+f5----> 清除瀏覽數(shù)據(jù)

總結(jié):

想讓瀏覽器有何種行為,服務(wù)端只能通過(guò)響應(yīng)頭的方式來(lái)設(shè)置
想讓服務(wù)器知道何種行為,瀏覽器只能通過(guò)請(qǐng)求頭的方式來(lái)設(shè)置

總結(jié)

以上是生活随笔為你收集整理的浏览器禁止缓存讲解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。