为提高性能,浏览器缓存是必不可少的一个策略,浏览器缓存指对资源在客户端以及服务器存储副本。
缓存分类
强缓存(本地缓存)
浏览器请求资源时,先直接到达强缓存阶段,如果命中则返回对应资源,否则进入协商缓存。实现方式如下:Cache-Control
常见值有no-cache
no-store
max-age
Expires
如:Tue, 21 Sep 2021 16:18:14 GMT
协商缓存
当强缓存未命中或按F5强制刷新时,会进入协商缓存。生效返回304,否则返回200。实现方式如下:If-None-Match
(请求)和ETag
(响应)一对报文If-Modified-Since
(请求)和Last-Modified
(响应)一对报文
缓存优势
- 减少服务器压力
- 加快加载速度
- 减少带宽消耗
缓存方式
- 使用相同的url
- 使用CDN
- 确定最优缓存周期