如果页面以前缓存过,是否会看到新的缓存控件 Headers?
Will New Cache Control Headers Be Seen If Page Previously Cached?
我正在尝试确定 何时 新设置的 cache-control header 将被之前缓存过页面的 end-users 读取。
假设用户加载了一个未设置任何 cache-control header 的页面。然后我在服务器级别添加 cache-control: no-cache, no-store
header 。它是否会强制以前访问过并缓存过该页面的用户获取最新版本?或者他们当前的版本是否必须根据他们的浏览器规则过期,因为最初没有设置 headers?
后者。 Headers 除非用户代理请求资源,否则不会被推送。但是,请参阅 this question. If a client makes a conditional request to validate its cache, those headers will also be sent in 304 responses. The spec says 缓存必须
use other header fields provided in the 304 (Not Modified)
response to replace all instances of the corresponding header
fields in the stored response.
我正在尝试确定 何时 新设置的 cache-control header 将被之前缓存过页面的 end-users 读取。
假设用户加载了一个未设置任何 cache-control header 的页面。然后我在服务器级别添加 cache-control: no-cache, no-store
header 。它是否会强制以前访问过并缓存过该页面的用户获取最新版本?或者他们当前的版本是否必须根据他们的浏览器规则过期,因为最初没有设置 headers?
后者。 Headers 除非用户代理请求资源,否则不会被推送。但是,请参阅 this question. If a client makes a conditional request to validate its cache, those headers will also be sent in 304 responses. The spec says 缓存必须
use other header fields provided in the 304 (Not Modified) response to replace all instances of the corresponding header fields in the stored response.