问题:
我有一个 Mootools Request 对象,它将 GET 请求发送到 PHP 脚本。该脚本返回一个 ID 数组。在除 IE 之外的每个浏览器中,每次创建 Request 对象的新实例时,它都会命中 PHP 后端脚本 - 没问题。但对于 IE,每个浏览器 session 只会点击一次 PHP 脚本。如果我清除缓存,它会再次流向后端,但在浏览器重新启动或缓存刷新之后。
问题:
- IE 是否以某种方式通过缓存阻止了我的请求?
- 如果是这样,我可以更改一些内容来防止 IE 阻止请求吗?
注意:
- 此问题存在于 IE9 及 IE9 兼容模式。我没有 在较旧的 IE 版本上进行了测试。
- 使用 页面范围的无缓存不是一个选项。
- 我在脚本中使用了 error_log() 语句来检查是否达到了目标。
这是我的代码:
requestIDs : function() {
new Request({
url : "/identity/idGenerator.php?generate_ids",
method : "get",
onSuccess : function(response) {
this.container.set('html', '');
var idList = response.split(",");
console.log(idList.join(","));
}.bind(this)
}).send();
}
});
最佳答案
您需要阻止 IE 缓存请求,here is one solution.
mootools 中内置的正确解决方案是使用配置参数 noCache:true
var myRequest = new Request({...
...
noCache:true,
...
...);
关于javascript - Mootools Request() 每个 session IE9 只工作一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6432842/