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

本文描述了在一个HTTPS环境中,Internet Explorer浏览器在下载文件和播放音频时遇到的问题及解决方案。通过调整Spring框架中的过滤器设置,解决了由于启用no-cache而导致的文件无法正常下载或播放的问题。

下面的问题发生的前提是你的请求为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!

转载于:https://my.oschina.net/u/142412/blog/174394

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值