IE<=8 下载或者读取录音文件的问题

下面的问题发生的前提是你的请求为HTTPS java

今天碰到一个很是纠结的问题,众所周知IE调试bug最痛苦不过。 spring

有一段代码以前工做的好好的,这两天就不行了,可是在我本地运行没有问题,部署到服务器就不行,查了一下午都没有解决。 缓存

状况酱子的,原本要从后台要输出一个文件流,用来下载或者播放录音文件,可是IE却不能读取。开始觉得是谁改动了后台的音频转换程序,发现没人动过。 服务器

我就找啊找啊,对比当前文件和以前的到底什么区别,直到最后人都疯了! post

今天有同事告诉我说他们在spring中加了一个filter,就是对普通的数据请求加了no-cache,也就是说对于全部的action请求禁用缓存。 spa

最终的结果证实就是因为这个缘由致使了IE不能存文件,播放音频文件也是同理。 调试

上面说的问题只有在https下才发生! code

解决方式:在你的反馈中添加 blog

response.setHeader("Pragma", "public");
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
对于小文件你也能够这样:

response.setHeader("Pragma", "public");
response.setHeader("Cache-Control", "maxage=3600");

外国友人也有相关说明 http://blogs.msdn.com/b/ieinternals/archive/2009/10/03/internet-explorer-cannot-download-over-https-when-no-cache.aspx internet-explorer

特此记录,顺便发下牢骚,你DY的IE!

相关文章
相关标签/搜索