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

在http中,可通过控制http响应头,来控制http客户端的资源缓存,可分为强缓存和协商缓存

强缓存:

cache-control : max-age = 31536000

强缓存通过响应头cache-control中max-age等指令进行控制

max-age可设置强缓存时间周期,

在该周期内,将直接从客户端缓存获取资源,而不会向服务器发送请求

协商缓存:

etag : W/" a6a8bc91475ad "

协商缓存通过响应头etag与last-modified进行控制,

它每次发送请求时,需要进行缓存新鲜度校验,如果资源过旧,将直接从响应中获取,否则从客户端缓存获取

新鲜度校验,通过请求if-none-match与响应头etag进行对比,或者请求头if-modified-since与响应头last-modifed进行对比

一般来说,我们对构建工具打包后,带有hash值的资源进行一年的强缓存,而对不带hash的资源进行协商缓存控制,注意协商缓存需要配置Cache-Control为max-age=0或者no-cache,否则一个没有设置Cache-Control的静态资源将会根据Date与Last-Modified计算出强缓存时间,可以根据谷歌中开发者工具中的网络面板查看其js/css等资源的响应头来确定是否配置了正确的资源缓存策略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值