get、head请求(没有请求体)可以缓存;put 、 delete 不可以缓存。
post可缓存但不默认缓存;get请求在ie下,参数一样会默认缓存304(chrome和firefox不会)。
为避免缓存:
https://www.jianshu.com/p/31ad2cef69d5 (参考)
1、可在请求参数param中添加时间戳。
(这种方式虽然能解决IE始终返回304的问题,但实际上每个ajax都会去请求服务器,对web优化并非最佳的解决方案。)
axios 中添加方式如下:
config.params = { ...(config.params || {}), _t: Date.now(), };
2 在html页面设置Meta标签 (不同浏览器设置方式不同,有兼容问题)
<meta http-equiv="Cache-Control" content="no-store"/> <meta http-equiv="Pragma" content="no-cache"/> <meta http-equiv="Expires" content="0"/>