美文网首页
HTTP缓存

HTTP缓存

作者: 小麻烦爱学习 | 来源:发表于2022-12-11 07:01 被阅读0次

http缓存:存储与请求关联的响应,并将存储的响应复用与后续请求

http缓存的好处:

  1. 响应速度快
  2. 减轻服务器的压力

http缓存如何实现

  • 扩展:http的头部分为:
    • 请求头
    • 响应头
    • 通用头:即可以用在请求头,又可以用在响应头。比如Cache-Control
    • 实体头:实体是指http报文想要传输的实际数据。比如上传文件时上传的文件,加载静态资源时的资源。实体报头可能同时存在于 HTTP 请求和响应信息中,实体报头既非请求或响应报头。

http缓存分类

按存储范围:私有缓存、共享缓存

私有缓存

存储在特定的客户端,比如浏览器。通过Cache-Control:private

共享缓存

存储在客户端和服务器之间。通过Cache-Control:public

浏览器的强制缓存和协商缓存

  • 强缓存:

    • 发起http请求时,直接从浏览器读取缓存,请求不必到达服务器。
    • 如果缓存命中,http状态码为200 OK(from memory cache)和 200 OK(from disk cache)
  • 协商缓存:

    • 发起http请求时,要经过和服务器的协商,才可以使用浏览器的缓存
    • 如果缓存命中,http状态码为304
  • 如何判断浏览器的缓存是否直接可用?

    • 查看是否有通用头Cache-Control
      • 如果设置了Cache-Control:max-age=<seconds>,缓存的最大有效期
      • 如果设置了Cache-Control:no-cache,表示每次都要使用协商缓存
      • 如果设置了Cache-Control:no-store,表示不使用任何缓存
    • 如果没有Cache-Control,查看是否有响应头Expires,看当前事情是否超过Expires设置的时间
  • 如何判断协商缓存是否命中?

相关文章

  • HTTP缓存原理

    什么是HTTP缓存 HTTP缓存通常指浏览器缓存,基于HTTP中header字段实现HTTP缓存分为强缓存和协商缓...

  • 前端缓存

    前端缓存 前端缓存主要是分为HTTP缓存和浏览器缓存。其中HTTP缓存是在HTTP请求传输时用到的缓存,主要在服务...

  • 前端缓存详解

    一、前言 前端缓存主要是分为HTTP缓存和浏览器缓存。其中HTTP缓存是在HTTP请求传输时用到的缓存,主要在服务...

  • PWA笔记一:Web的万物基础缓存

    前言 这里讨论的缓存包括两种,一种是HTTP缓存,一种是Service Worker缓存。 HTTP缓存 HTTP...

  • 前端缓存的理解 或者 前端数据持久化的理解(强制缓存、协商缓存)

    前端缓存分为HTTP缓存和浏览器缓存 其中HTTP缓存是在HTTP请求传输时用到的缓存,主要在服务器代码上设置;而...

  • http缓存和各个版本差异理解

    http缓存我们可以通过设置http头部属性来对资源进行缓存,资源缓存分为强制缓存和协商缓存 强制缓存expire...

  • http缓存

    http缓存分为强制缓存和对比缓存 强制缓存时, 客户端先判断本地缓存是否有效(http/1.1通过Cache-C...

  • HTTP缓存

    缓存控制Cache-Control Cache-Control是Web性能优化的一种,能加速HTTP请求与响应。 ...

  • http缓存

    来源: 《http权威指南》学一个东西,怎么去学习呢?这分为三个步骤,是什么, 为什么, 怎么做?文章我会着重讲怎...

  • Http缓存

    参考文章:http://oohcode.com/2015/05/28/http-cache/ 客户端 头字段: C...

网友评论

      本文标题:HTTP缓存

      本文链接:https://www.haomeiwen.com/subject/hxqfqdtx.html