No caching ——无缓存工具

Posted zocymo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了No caching ——无缓存工具相关的知识,希望对你有一定的参考价值。

No caching ——无缓存工具

 无缓存工具阻止客户端应用程序(如Web浏览器)缓存任何资源,因此,请求总是发送到远程站点,所以我们总能看到最新版本。

技术分享图片

 

适用场景

开发每次新部署了一版环境,说解决了XXBUG,但有时测试回归的时候会发现BUG并没有被解决,开发会质疑是不是缓存问题,有时候不是,有时候还真的是。不是的时候一直在那儿强刷很傻,真的是的时候场面会很尴尬……所以这个工具这种时候应该就会比较好用。

 

适用范围

该工具可以作用于每个请求(选中 Enable No Caching 即可),也可以仅对你配置的HOST启用(启用的nocaching同时,请选中 only for selected locations);

当用于”only for selected locations”时,可以将no caching的效果限制在你所配置的主机上。

 

No caching的运行原理

无缓存工具通过操纵控制缓存响应的HTTP头来防止缓存;

请求中删除If-Modified-Since和If-None-Match头,添加Pragma:no-cache和Cache-control:no-cache。

响应中删除Expires,Last-Modified和ETag标头,添加Expires:0和Cache-Control: no-cache。

因为客户端的所有请求和服务端响应都经过charles进行处理,所以charles可以很容易的做到这些。

 
 

以上是关于No caching ——无缓存工具的主要内容,如果未能解决你的问题,请参考以下文章

如何通过注释在spring mvc 3中设置标头无缓存

no-cache 和 must-revalidate 之间的区别

Symfony 缓存 HTTP 已经 cache-controle: no-cache private

mysql的SQL_NO_CACHE(在查询时不使用缓存)和sql_cache用法

http协议缓存小结

Http <link type="prefetch" vs. pragma: no-cache