编程技术文章分享与教程

网站首页 > 技术文章 正文

40、强制缓存和协商缓存的区别 强缓存和协商缓存区别和过程简书

hmc789 2024-11-13 11:31:37 技术文章 2 ℃

协商缓存

  • 协商缓存是利用的是【Last-Modified,If-Modified-Since】和【ETag、If-None-Match】这两对请求头响应头来管理的
  • Last-Modified 表示本地文件最后修改日期,浏览器会在request header加上If-Modified-Since(上次返回的Last-Modified的值),询问服务器在该日期后资源是否有更新,有更新的话就会将新的资源发送回来
  • Etag就像一个指纹,资源变化都会导致ETag变化,跟最后修改时间没有关系,ETag可以保证每一个资源是唯一的
  • If-None-Match的header会将上次返回的Etag发送给服务器,询问该资源的Etag是否有更新,有变动就会发送新的资源回来

强制缓存


  • 而强制缓存不需要发送请求到服务端,根据请求头expires和cache-control判断是否命中强缓存


【强制缓存与协商缓存的流程图如下所示:】

标签列表
最新留言