我正在构建一个使用长轮询技术的应用程序,我遇到了IE8的麻烦。
所以这是我使用的简化代码:
PHP:
$time = time();
while((time() - $time) < 10) {
$data = rand(0,10);
// if we have new data return it
if($data == 3 || $data == 6) {
echo json_encode($data);
break;
}
sleep(1);
}
JS:
var lpOnComplete = function(response) {
alert(response);
// do more processing
lpStart();
};
var lpStart = function() {
$.post('http://example.com/test', {}, lpOnComplete, 'json');
};
$(document).ready(lpStart);
问题似乎是IE8不等待服务器响应,但是在第一次正确响应之后直接触发下一个请求或者死亡。 什么可能导致这种行为?
答案 0 :(得分:0)
这似乎可以解决问题。
$.ajaxSetup ({
cache: false
});