为什么在请求中使用Cache-Control标头?

时间:2017-03-07 16:06:35

标签: javascript caching cache-control

Cache-Control上的

This page指定以下内容:

  

标准缓存控制指令,可由客户端使用   HTTP请求。

我认为只有服务器会发回有关客户端是否应该缓存响应的信息。为什么客户端会向服务器发送缓存信息?

1 个答案:

答案 0 :(得分:5)

客户端和服务器之间可能有任意数量的中间代理进行缓存。客户端可以显式地从任何和所有缓存实体请求显式缓存行为,例如:

  • max-age - "我不想要比X&#34更早的回复;
  • no-cache - "我想要一个新的回复"
  • no-transform - "我不想要它,除非它是原作"
  • only-if-cached - "如果您还没有原始服务器,请不要打扰原始服务器"

与所有请求一样,服务器在是否遵守请求方面有一定的余地。仅仅因为客户坚持未缓存的回复并不意味着它必然会得到它。