问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

缓存机制

发布网友 发布时间:2022-12-11 00:08

我来回答

1个回答

热心网友 时间:2024-12-04 04:54

之前在学 vite 时, vite 开发模式基于 esbuild ,现代浏览器都已经原生支持 esbuild ,只要使用支持esm的浏览器开发,vite 会将源码模块的请求会根据 304 Not Modified 进行协商缓存,依赖模块通过 Cache-Control:max-age=31536000,immutable 进行缓存,这样就不需要再次请求资源。

那到底浏览器的缓存机制是怎么实现的呢?

浏览器第一次向服务器发起请求后拿到请求结果,会根据响应头的缓存标识,决定是否缓存,是则将请求结果和缓存标识存入浏览器缓存中。

浏览器每次拿到返回的请求结果都会将该结果和缓存标识存入浏览器缓存中(每个请求的缓存存入)

浏览器每次发起请求,都会先在浏览器缓存中查找该请求的结果以及缓存标识(每个请求的缓存读取)

一、 强制缓存

控制强制缓存的字段有 Expires 和 Cache-Control,Cache-Conctrol的优先级比Expires高

强制缓存会出现以下情况:

二、 协商缓存

控制协商缓存的字段分别有Last-Modified / If-Modified-Since和Etag / If-None-Match,其中Etag / If-None-Match的优先级比Last-Modified / If-Modified-Since高

当浏览器缓存中存在该缓存结果和缓存标识,且结果却失效了,此时使用协商缓存:

总结来说,强制缓存优先于协商缓存,如果强制缓存(Expires和Cache-Control)生效则直接使用缓存,如果不生效则进行协商缓存(Last-Modified / If-Modified-Since和Etag / If-None-Match),如果协商缓存失效,那么代表该请求的缓存失效,重新获取请求结果,再存入浏览器缓存中;生效则返回304,继续使用缓存。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
情侣文案英文高级浪漫87句 Love to the people don't wave.什么意思 gladtomeetyou怎么 gladtomeetyou.怎么回答 2016生肖猴运程 武汉买房88平方满50万落户政策 非武汉市户口在武汉市购买70平方总价50万的商品房,可以转户口吗... 我想在武汉买一套50万左右的新房子,谁能告诉我现在武昌,关山,江夏,有... 支付宝怎么开通步数授权? 总价50万能在武汉买一套两室一天的二手房吗? HTK工具包里的HVite源码能改吗 Vite2+vue3+ts 使用 router,layout 搭建页面框架,并做页面自适应_百度... 分析vite2.x/rollup分包原理,解决chunk碎片问题 [vite源码解析]server篇 [vite源码解析]cli篇 如何孝顺公婆 苏中的南通 泰州 扬州 盐城 综合实力 谁更强? 扬州、南通、泰州中你对这几座城市最深刻的印象是什么呢? 南通和泰州哪个发达 江苏 南通 泰州 哪个好 肯定是南通好 泰州大学与南通大学哪个好? 南通和泰州哪里好 南通市崇川区和泰州市姜堰区那个发达 南通和泰州哪个好? 如何使用需要注册的软件 如何安装软件,注册软件 2022年永辉超市和沃尔玛库存管理成本 anydesk需要注册吗 山西省临汾到黎城高速公路什么时候招标 黎霍高速沁源高速口在哪里 关于Vite配置preprocessorOptions.scss.additionalData全局引入scss文 ... 《怦然心动》赏析 秋分早霜降迟下一句是什么 秋分早霜降迟下一句是什么句子 初一女生买灵摆是不是心理不健康? 这是谁的书 怎么说? 这是谁的书?英语 守望先锋2下一个神话皮肤是什么 中华民国二十九年十分银币值多少钱 魔兽世界任务以我之眼怎么做 右符告下元始符命是哪部经 莲蓬鬼话里有个小说 里面有只黑猫 女主在一个晚上才开业的古玩店里打工... 封魂罐-TXT(第一部+第二部)谁有啊,要出书的完接版的 谢谢~ 民国十年的面值十分的银币多少钱 达斡尔族有哪些节日 达斡尔族的传统节日 飞利浦公司开发的用在ipheo上测试心率的app软件叫什么名字? 请高手指点下vr水晶灯材质怎么调? 3dmax2014 出图的水晶灯这样是为什么 求大神指导。。。新手 3DMAX下载完的水晶灯为什么用不了 等外面有好多圆形的罩 水晶灯在vr中如何制作?? 3Dmax问题,这是电脑配置