即使使用mathrandom,IE8仍然会缓存我的请求
即使URL中包含Math.random(), TLDR IE仍然会缓存我的请求。
所以我在我的url末尾添加了数学随机数:
var MYKMLURL = 'http://' + host + 'data/pattern?key='+ Math.random();
我还在我的函数参数中添加了数学随机:
window.setTimeout(RefreshPatternData, 1000, MYKMLLAYER); function RefreshPatternData(layer) { layer.loaded = false; layer.setVisibility(true); layer.refresh({ force: true, params: { 'key': Math.random()} }); setTimeout(RefreshPatternData, 30000, MYKMLLAYER); }
所以请求显示为http:// host / data / pattern?key = 35678652545等。
每次请求时它都会更改。
它适用于Firefox,Chrome和Safari等。但IE8仍在缓存数据,而不是更新我的图层。
关于为什么会出现这种情况的任何想法?
所以我补充说:
仍在缓存数据。 还有什么想法?
你可以尝试这篇文章的答案:
防止IE缓存
我有一个与IE类似的问题,它缓存了AJAX请求。 (为什么,上帝,为什么要缓存一个AJAX请求?)其他一切工作都很好,但是IE需要通过HTTP头强制转换才能缓存AJAX请求。
我早就忘记了这个url,但请看: http : //greenash.net.au/thoughts/2006/03/an-ie-ajax-gotcha-page-caching/
此外,为我做的HTTP标头是:
Pragma: no-cache Cache-Control: no-store, no-cache, must-revalidate Cache-Control: post-check=0, pre-check=0
…老实说,我在某个地方收集了一个网站。
- IE中的jQuery focus()和focusout()冲突
- 直接从jQuery插件执行Ajax请求是不好的做法吗?
- 如何在IE中动态生成的挖空模板中将自动焦点转移到输入元素
- 将本机浏览器事件对象转换为jQuery事件对象
- 如何调用IE CSS渐变属性 – >从Jquery过滤
- 为什么Internet Explorer不喜欢这个jQuery?
- 当Internet Explorer开发人员工具栏可见时,JavaScript脚本仅适用于Internet Explorer
- 在IE 11中动态创建对象键(预期标识符,字符串或数字,而不是逗号问题)
- 使用Internet Explorer jquery Ajax响应“未定义”