浏览器强缓存和协商缓存

强缓存和协商缓存

  • 浏览器的缓存主要是为了提高访问效率,强制缓存,第一次访问一个网站的时候,里面的静态资源如图片、CSS、JS 、icon这些资源实际上是从服务器上下载的,刷新网页这个资源是没有必要在服务器上重新去请求的,像这样的资源,浏览器会默认是一些强制缓存,强制缓存当用户第二次访问的时候,它不会再服务器上重新下载资源了,同样返回200状态码,但这个资源会从浏览器的本地缓存里面去取,这种第二次取的缓存的状态就是一种强制缓存
  • 协商缓存:和后台去协商资源,要不要对它进行缓存,如果这个资源是一个协商缓存的资源,第一次返回结果里面的状态码是200同时会唯一标携带一个,是否更新Last Modified 的一个状态,还会返回一个唯一标识etag,可以理解为内容资源的一个hash或者一个唯一的标识,只要这个资源在服务端没有变化,下次访问的时候后台会对比这个etag标签,或者对比Last Modified的一个时间,如果资源没有变动,会返回一个304的状态,浏览器接收到304状态之后,判断这个资源无变化,只需从本地把缓存的资源拿出来。

相关推荐

  1. 浏览器缓存协商缓存

    2023-12-29 08:02:03       60 阅读
  2. 浏览器缓存缓存、协商缓存

    2023-12-29 08:02:03       35 阅读
  3. 什么是缓存协商缓存

    2023-12-29 08:02:03       57 阅读
  4. 缓存协商缓存的区别?

    2023-12-29 08:02:03       40 阅读
  5. 前端协商缓存缓存

    2023-12-29 08:02:03       33 阅读
  6. 缓存协商缓存的区别

    2023-12-29 08:02:03       39 阅读
  7. http协商缓存缓存

    2023-12-29 08:02:03       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-29 08:02:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-29 08:02:03       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-29 08:02:03       82 阅读
  4. Python语言-面向对象

    2023-12-29 08:02:03       91 阅读

热门阅读

  1. LeetCode [24] 两两交换链表中的节点

    2023-12-29 08:02:03       67 阅读
  2. Kotlin 派生类

    2023-12-29 08:02:03       51 阅读
  3. Go面试题学习

    2023-12-29 08:02:03       65 阅读
  4. Leetcode 509 斐波那契数

    2023-12-29 08:02:03       46 阅读
  5. 什么是ETL?

    2023-12-29 08:02:03       54 阅读
  6. 【Delphi 基础知识 4】类是如何被实例化的?

    2023-12-29 08:02:03       62 阅读
  7. win10 vs c++ 安装vcpkg 类似于pip

    2023-12-29 08:02:03       59 阅读
  8. 案例系列:IBM反洗钱交易数据_GNN节点分类检测

    2023-12-29 08:02:03       43 阅读