1
我有這個,我在一個等待頁面使用JavaScript函數來檢查,如果在我的Web App的出口進程正在運行或已完成:Internet Explorer的Ajax調用,緩存的響應問題
function waitForExport(token) {
$.ajax({
type : "GET",
url : 'export/status',
data : {
token : token
},
success : function(data) {
if (data.status == 'running') {
$('#waitContent').append('<span>RUNNING</span>');
setTimeout("waitForExport('" + token + "')", 5000);
}
if (data.status == 'done') {
$('#waitContent').append('<div>DONE</div>');
location.href = "export/results";
}
},
error : function(jqXHR, textStatus, errorThrown) {
alert(jqXHR.responseText);
}
});
}
它的工作原理在Chrome和Firefox中,但不在IE中。
使用Internet Explorer 7/8,該進程顯示始終運行,因爲除第一次以外,它不會發出任何其他服務器請求(我使用Eclipse調試器進行了驗證)。它似乎緩存了第一個服務器響應,然後再也沒有命中服務器了......
任何想法?
完美!非常感謝你! – davioooh
沒問題!當我在Internet Explorer上測試AJAX時,我也注意到了這一點。這是一個痛苦,弄清楚,但現在我知道總是設置緩存:假,除非我知道我不關心緩存能力 – Ian
你救了我! :D – davioooh