1

想象一个max-age60 秒的资源:

  • 1分钟后,浏览器发送一个条件头If-None-Match
  • 这将检查资源的 etag 是否已更改。
  • 如果 etag 没有改变,服务器会返回一个304 Not Modified响应。

此响应是否会自动添加新的 60 秒max-age?或者这是一个案例服务器需要明确处理。

4

1 回答 1

2

在HTTP 缓存规范的第 4.2 节中,它说如下:

响应的年龄是自原始服务器生成或成功验证以来经过的时间。

max-age指令告诉客户端的 HTTP 缓存响应在 60 秒内有效。因此,一旦服务器发送了 304 响应,缓存的响应将再有效 60 秒。

这里的服务器没有什么可处理的。在收到 304 响应时,由客户端的缓存实现来更新响应。

于 2018-05-17T07:45:16.757 回答