我听说过几个不同来源的建议,浏览器有时会忽略缓存标头,而是使用过时的内容。但是,我从未真正观察过这一点。
浏览器有时会忽略有效的缓存标头吗?它曾经是真的吗?
您能否举例说明浏览器会忽略Cache-control: no-cache
标题或类似内容的情况,而是给用户带来陈旧的结果?
答案 0 :(得分:1)
您可能面临的主要问题之一不是浏览器,而是浏览器正在使用的代理。
"must-revalidate: Some proxies can be configured to ignore the Expires and maxage.
This keyword forces them to always act like the resource was expired.
proxy-revalidate: Same as must-revalidate, but only for proxies.
s-maxage: Same as maxage, but only for proxies."
来源:http://www.tommylacroix.com/2008/07/17/http-caching-basics/
此外,由于缓存控制指定在X时间过去之前不应重新验证内容,因此浏览器可能会提供陈旧内容。