cache-control: must-revalidate 是HTTP缓存控制中的一个重要指令,用于指定缓存资源的验证策略。以下是针对你问题的详细回答: 解释cache-control: must-revalidate的含义: cache-control: must-revalidate 指令要求缓存(无论是浏览器缓存还是代理服务器缓存)在资源过期后,必须向源服务器重新验证资源的有效性,才能再次使用...
稍微了解HTTP协议的前端同学,相比对Cache-Control不会感到陌生,性能优化时经常都会跟它打交道。 常见的值有有private、public、no-store、no-cache、must-revalidate、max-age等。 各个取值所代表的含义,网上总结挺多的,这里就不打算再进行逐一介绍,感兴趣的可以一起探讨交流。
如果你想禁用由Last-Modified响应头造成的启发式缓存,正确的做法是要加上Cache-Control: no-cache,但在 Chrome 中,Cache-Control: must-revalidate也有同样的功效。很多人在 Chrome 里开发和测试,所以误以为这是must-revalidate的正规作用,从而推断其它浏览器也是支持的,但其实规范里并没有指出must-revalidate有关闭启发...
网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为以下几种情况: (1) 打开新窗口 值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。
cache-control:must-revalidate 首部会对过期后的缓存进行验证 1.must-revalidate和no-cache的区别 no-cache会强制验证缓存(无论缓存是否过期),而must-revalidate只会验证过期后的缓存。 2.为什么需要must-revalidate 当初看到这里的时候就产生了这个疑问,一般来说,缓存过期后就不能再使用,必须先进行验证,那么为什么还...
no-cache、must-revalidate简介 no-cache: 告诉浏览器、缓存服务器,不管本地副本是否过期,使用资源副本前,一定要到源服务器进行副本有效性校验。 must-revalidate:告诉浏览器、缓存服务器,本地副本过期前,可以使用本地副本;本地副本一旦过期,必须去源服务器进行有效性校验。
no-cache、must-revalidate简介 no-cache: 告诉浏览器、缓存服务器,不管本地副本是否过期,使用资源副本前,一定要到源服务器进行副本有效性校验。 must-revalidate:告诉浏览器、缓存服务器,本地副本过期前,可以使用本地副本;本地副本一旦过期,必须去源服务器进行有效性校验。
正确使用Cache-Control指令涉及避免混淆,如no-cache、no-store、must-revalidate等。no-cache指令实际上对应于must-revalidate的含义,而must-revalidate更合适的名字可能是never-return-stale。使用no-store指令则完全禁止缓存响应,防止存储在任何磁盘或内存中。计算机科学领域内,“让缓存失效”和“给东西命名...
no-cache、must-revalidate简介 no-cache: 告诉浏览器、缓存服务器,不管本地副本是否过期,使用资源副本前,一定要到源服务器进行副本有效性校验。 must-revalidate:告诉浏览器、缓存服务器,本地副本过期前,可以使用本地副本;本地副本一旦过期,必须去源服务器进行有效性校验。
如果你想禁用由Last-Modified响应头造成的启发式缓存,正确的做法是要加上Cache-Control: no-cache,但在 Chrome 中,Cache-Control: must-revalidate也有同样的功效。很多人在 Chrome 里开发和测试,所以误以为这是must-revalidate的正规作用,从而推断其它浏览器也是支持的,但其实规范里并没有指出must-revalidate有关闭启发...