Mootools Request()每个会话IE9只能运行一次

时间:2011-06-21 22:36:02

标签: javascript internet-explorer-7 get mootools request

问题:
我有一个Mootools Request对象,它向PHP脚本发送一个GET请求。该脚本返回一组ID。在除IE之外的每个浏览器中,每次对Request对象进行新的实例化时都会遇到PHP后端脚本 - 没问题。但是在IE浏览器会话中,只有每次点击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();
    }
});

2 个答案:

答案 0 :(得分:2)

您需要阻止IE缓存请求,here is one solution.
在mootools中构建的正确解决方案是使用配置参数初始化请求noCache:true

var myRequest = new Request({...
                             ...
                             noCache:true,
                             ...
                             ...);

答案 1 :(得分:1)

使用method: 'post'阻止IE缓存。