为什么在请求标头(客户端到服务器)中发送Cache-Control属性?

时间:2013-01-26 20:06:51

标签: http http-headers

在阅读HTTP标头的Cache-Control字段后,

我理解HTTP响应头(服务器到客户端)中的Cache-Control字段通过为{{1发送不同的值来指定中间代理服务器/客户端浏览器如何处理响应的指令响应标题中的字段:Cache-Controlprivatepublicno-cache

但我不知道为什么我们需要在请求标头中发送no-store属性(客户端到服务器)?

3 个答案:

答案 0 :(得分:120)

Cache-Control: no-cache通常用于请求标头(从Web浏览器发送到服务器)以强制验证中间代理中的资源。 如果客户端未将此请求发送到服务器,则中间代理将返回内容的副本(如果内容是新的(根据Expiremax-age字段未过期)。 Cache-Control指示这些代理重新验证副本,即使它是新的。

答案 1 :(得分:13)

客户端可以在请求中发送Cache-Control标头,以便从源服务器和请求路径上的任何中间代理服务器请求特定的缓存行为,例如重新验证。

答案 2 :(得分:2)

除上述答案外,
可能存在实现缓存链接的设置。在这种情况下,如果请求到达不满足的第一个缓存,它可能会进一步链接缓存。

因此,为了始终从服务器获取响应,我们在请求头中包含缓存控制。这将确保响应始终来自服务器。