最近在写一段js代码时遭遇了图片缓存的问题,网上一些资料说用meta标签清除缓存或者通过设置response的头部属性使IE自动清除缓存数据,但发现这些方法自能清除跳转过程中的前一个页面的缓存数据,实际上的需求是在被请求的页面中始终向服务器请求图片数据。后来有资料说在浏览器url的?后面增加参数,其值是随机数。这样设置就能使浏览器从服务器刷新数据。但这种方法在post方式提交数据的过程中完全无效。后来才猛然想起图片数据是相对于页面请求的独立请求,所以试着在img标签的src属性中添加随机数,结果成功地解决了这个问题。
<img src="XXX.jpg?<%=Math.random()%>"/>