强缓存和协商缓存

协商缓存  (没有强缓存或者强缓存过期)

协商缓存是浏览器判断资源是否可用,所以需要两个标识,reponse header 响应头带上某个字段(Last-Modified或者Etag),request header(If-Modified-Since或者If-None-Match)
 
Last-modified       资源在服务器的最后修改时间   
If-Modified-Since 向服务器发送资源的最后修改时间
只要发生变化,内容不变,也会重新返回最新资源(因为是按文件最后修改时间计算的,并没有把内容考虑进去)  
有时Expires和Last-modified一起使用(服务器时钟不一致) 
Last-Modified和Etag区别:前者只能精确到1s,后者可以到0.1s  Etag内容发生变化,才会变化 Last-Modified前者时间变化就认为变化
F5刷新有效     ctrl+r有效
ctrl F5无效 ctrl+shift+r无效

强缓存 (本地缓存)

cache-control(优先级高于后者,以客户端为准相对时间)max-age    Expires(http1.0老的标准,以服务端为准绝对时间,不稳定)



posted @ 2020-03-25 19:45  国服第一李师师  阅读(139)  评论(0编辑  收藏  举报