我们在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的下载?
答案 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());
这会说服浏览器每次都在下载新资源。