非缓存和重新验证之间的区别?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (18)

来自RFC 2616

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.1

如果no-cache指令没有指定一个字段名称,那么缓存绝不能使用该响应来满足后续的请求,而不需要对源服务器进行成功的重新验证。这允许源服务器甚至通过已配置为对客户端请求返回陈旧响应的高速缓存来防止高速缓存。

必重新验证 当必须重新验证指令存在于缓存接收到的响应中时,该缓存不得在该缓存过时后才使用该条目来响应后续请求,而不必先用源服务器对其进行重新验证

特别是关于no-cache这个,用户代理实际上是如何经验性地对待这个指令的?

什么是no-cache,如果有must-revalidatemax-age

这个评论:

http://palpapers.plynt.com/issues/2008Jul/cache-control-attributes/

提问于
用户回答回答于

相信这must-revalidate意味着once the cache expires, refuse to return stale responses to the user even if they say that stale responses are acceptable

用户回答回答于

max-age=0, must-revalidateno-cache不是完全一样的

扫码关注云+社区