http缓存(强缓存和协商缓存)

http 缓存就是基于 http 协议的浏览器文件级缓存机制,通俗来讲就是当我们使用浏览器首次访问一个页面时,会将一些资源文件(img,css,js等)缓存到本地,以便之后打开此页面时直接读取本地的资源文件,进而缩短页面的响应时间,减少对服务器的请求次数。http缓存分为强缓存和协商缓存。

强缓存:根据Expires和Cache-Control字段判断缓存是否失效,如果没有失效,则直接访问本地缓存的资源文件,不需要向服务器请求。Expires和Cache-Control的具体使用以及不同点:

Expires:

在响应头部(Response Headers)添加,格式

expires: Mon, 19 Feb 2024 17:43:04 GMT

 代表失效日期是2024年2月19日的17:43:04,周一

Cache-Control:
Cache-Control:max-age=600

max-age=6000代表6000秒,也就是缓存在6000秒之后就失效了,Cache-Control还有很多其他的指令,这里我就不一一介绍了。

Expires 是http1.0的产物,Cache-Control是http1.1的产物,两者如果同时存在的话,Cache-Control的优先级要高于Expires。

协商缓存:浏览器首次向服务器发送请求,服务器响应请求并返回资源,同时在响应头部(Response Headers)中放入ETag和Last-Modified两个新字段。而在浏览器再次向服务器请求时会在响应头部(Request Headers)携带If-None-Match和If-Modified-Since,If-None-Match值就是之前服务器返回的ETag值,If-Modified-Since的值对应的是Last-Modified的值。如果它们两两校验成功,则服务器会返回状态码304,也就是代表缓存有效,可以直接使用。如果校验失败,则正常返回数据,状态码200,并附上新的ETag和Last-Modified。

注:强缓存的优先级高于协商缓存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值