HTTP协议缓存机制

作者: Songe_ | 来源:发表于2017-06-27 11:06 被阅读6次

缓存相关的请求头

  • Last-Modified
  • Expires
  • Cache-Control
  • ETag

区别与联系

  • Last-Modified

    • 一般存在于静态服务器的HTTP响应头中,由web服务器自动添加

    • 当客户端得到这个响应头,在下次向服务端发起请求的时候,就把Last-Modified头所带的更改时间加到If-Modified-Since头中,发给服务端。服务端收到If-Modified-Since标记,就判断在此时间后文件内容有无发生变化,若无变化,响应 304 Not Modified 。这样做的好处是,节省了网络的传输,因为请求和响应中都没有携带消息体。

  • Expires 使用绝对时间来标记缓存过期的时间(HTTP1.0),如果本地时间和服务器时间不同步,就会影响到缓存服务器的工作,故在HTTP1.1推出了Cache-control。

  • Cache-Control有多种用法:

    • Cache-Control: max-age=3600, public
      • 指定缓存过期的相对时间(秒数),public允许任何人(浏览器,缓存服务器,代理服务器)缓存
    • Cache-Control: no-cache
      • 不缓存
  • ETag

    • 与Last-Modified类似,但是是用一串跟内容相关的编码来标记,如

    ETag: “74177-b46585209c1bc0”

    • 浏览器会在下次请求时,通过类似最后修改时间的方法,在HTTP请求头中附加以下内容来询问服务器该内容是否发生变化:

      If-None-Match: “74177-b46585209c1bc0”

相关文章

  • (转)HTTP协议 (四) 缓存

    之前写过一个篇【HTTP协议详解】,这次继续介绍HTTP协议中的缓存机制。HTTP协议提供了非常强大的缓存机制, ...

  • H5页面缓存

    一、协议缓存 http协议缓存机制是指通过 HTTP 协议头里的 Cache-Control(或 Expires)...

  • 浏览器缓存机制

    浏览器缓存机制:浏览器缓存机制,其实主要就是http协议定义的缓存机制(如:Expires;Cache-contr...

  • HTTP协议缓存机制

    缓存相关的请求头 Last-Modified Expires Cache-Control ETag 区别与联系 L...

  • http协议缓存机制

    2.1、学习http协议,理解http请求-响应模式2.2、理解http是应用层协议,它是构建在TCP/IP协议上...

  • http消息头中的缓存控制以及volley和retrofit中的

    缓存控制 浏览器 HTTP 协议缓存机制详解 确实很详细缓存Cache详解 先前对http缓存的主要疑惑在于: 几...

  • http的缓存机制在flask的实现

    http协议有一系列的缓存机制(RFC2616),相关的参数就在协议header中。缓存机制的合理使用可以大大减缓...

  • 浏览器缓存

    浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制(如: Expires; Cache-control等)。但...

  • 浏览器缓存机制

    浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制(如: Expires; Cache-control等)。但...

  • HTTP 200 OK和HTTP 304 Not modifie

    这两个字段都和HTTP协议的缓存控制相关。 浏览器缓存机制是通过HTTP协议Header里的Cache-Contr...

网友评论

    本文标题:HTTP协议缓存机制

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