您的位置:首页 > 理论基础 > 计算机网络

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

2013-11-05 00:00 281 查看
下面的问题发生的前提是你的请求为HTTPS

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

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

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

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

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

最终的结果证明就是由于这个原因导致了IE不能存文件,播放音频文件也是同理。

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

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

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

特此记录,顺便发下牢骚,你DY的IE!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  IE https 下载 录音