5

Cache-Control: no-cacheHTTP 响应与vs有什么区别Cache-Control: max-age=0, must-revalidate, proxy-revalidate

浏览器是否将其视为相同

4

1 回答 1

3

一般来说,不同的浏览器的行为并不完全相同。HTTP 缓存标头。

我记得的一个小区别(找不到来源,所以我不是 100% 这是确切的行为描述)是 Chrome(公平)对待max-age=0就像你指定max-age=10的一样(假设行为差异足够小,但性能影响还是有意义的)。

无论如何,以下是浏览器之间 HTTP 缓存行为差异的一些其他示例:

  • 有些人会优先考虑 HTTP 1.0 缓存标头 ( Pragma),其他人会优先考虑 HTTP 1.1 缓存标头
  • 某些浏览器 (FF + ?)不遵守 no-store指令并将数据存储在加密缓存中
  • 一些浏览器在 之后指定了忽略no-cache指令public,而另一些则没有。
  • IE 忽略 max-age存在时vary
  • 等等

我的总体建议是同时使用Cache-Control: no-cache, must-revalidate, proxy-revalidate, pragma: no-cache(HTTP 1.0) 并Expires: 0确保所有浏览器都不会缓存带有这些标头的内容。

于 2014-08-15T16:55:00.353 回答