强制缓存与协商缓存

  • Post author:
  • Post category:其他



原文



1.强制缓存


在这里插入图片描述

(1)HTTP响应报文中

expires

的时间值,是一个

绝对值

(2)HTTP响应报文中

Cache-Control

为max-age=600,是

相对值

由于Cache-Control的优先级比expires,那么直接根据Cache-Control的值进行缓存,意思就是说在600秒内再次发起该请求,则会直接使用缓存结果,强制缓存生效。

注:在无法确定客户端的时间是否与服务端的时间同步的情况下,Cache-Control相比于expires是更好的选择,所以同时存在时,只有Cache-Control生效。


2.协商缓存


同样,协商缓存的标识也是在响应报文的HTTP头中和请求结果一起返回给浏览器的,控制协商缓存的字段分别有:

Last-Modified / If-Modified-Since和Etag / If-None-Match



其中Etag / If-None-Match的优先级比Last-Modified / If-Modified-Since高。


在这里插入图片描述

在这里插入图片描述

在这里插入图片描述