防止在https上缓存而不破坏IE

时间:2012-07-19 11:55:25

标签: html internet-explorer https http-caching

我们在web应用程序中的一些下载是生成的,不应由浏览器缓存。

使用HTTP时://我们可以通过标头来阻止这种情况: 缓存控制:无缓存

然而,这个突破是IE:

http://support.microsoft.com/kb/2549423

http://support.microsoft.com/kb/812935

http://support.microsoft.com/kb/316431 (related problem)

IE问题的常见解决方案是不发送这些标头。 但是删除这些标题会打开浏览器再次缓存这些资源的可能性(这是不必要的)。

是否有一种干净的(最好是内容不知情的)方法来阻止所有常见浏览器中的缓存而不破坏IE的下载?

1 个答案:

答案 0 :(得分:0)

如果Web应用程序的服务器部分忽略其他请求参数,那么如何更改

http://mywebapplication/service?param=value

http://mywebapplication/service?param=value&garbage=889jsdakd8932hd

即,在客户端:

url = 'http://mywebapplication/service';
url += '?garbage=';

for (var i = 0; i < 20; i++)
    url += Math.floor(10 * Math.random());

这会说服浏览器每次都在下载新资源。