http缓存 强制缓存 协商缓存

强制缓存  :

当我们从浏览器第一次访问一个网站,浏览器就会向服务器发送http请求   服务器会根据我们的请求返回响应的资源,

如果服务器觉得浏览器请求的资源应该是要缓存的,比如css文件js文件  图片文件等等,

服务器会在响应头 response headers中  增加一个cache control   设置 max-age 的也就是过期的时间 (单位s)  不想缓存 可以设置 no-cache  

这样的话  在浏览器的本都缓存里  就会存下对应的资源文件   

如果下一次请求相同网站的时候    浏览器会检查 max-age有没有过期 如果没有过期 ,不发起请求直接从本地缓存里拿资源  从而省去请求的时间  加快响应的速度     

cache-control是服务器响应头设置的,所以我们前端是不需要做任何的事情    

协商缓存:服务端缓存策略  

当我们从浏览器第一次访问一个网站,浏览器就会向服务器发送http请求    如果服务器采用的是协商缓存策略          服务器就会返回资源和资源的标识    浏览器会把资源放入本地缓存

浏览 后续发送请求的时候   不仅会发送请求  还会发送资源标识   服务器会进行判断  当前请求资源   本地缓存里的版本和 服务器里的资源最新版本  是否一致     如果资源一致  服务器会返回304状态码    然后浏览器会直接从本地缓存里拿资源  

如果本地缓存里的资源版本和服务器里资源的版本不一致  ,服务器会返回200状态码 ,以及最新的资源和新的资源标识 

posted @ 2021-08-23 11:06  一个动态类型的幽灵  阅读(63)  评论(0编辑  收藏  举报