我正在使用 JQuery 1.9.1 。这个问题可能与以前的一些问题有可能重复。但这些问题已经过时了。所以我需要一个最新的解决方案。
对于我的java应用程序,我每隔tomcat server
通过10 sec
向JQuery-Ajax
发送一个连续请求,以获取数据,
function startPolling(){
$.ajax({
type: "POST",
cache: false,
url: "My URL",
dataType: "html",
timeout: 10000,
success: function(response) {
if(response != null && response !="" && response !="null")
$("#sucess").html(response);
},
error: function(xhr) {
xhr.abort();
//alert('Error: ' + e);
},
complete: function(xhr, status) {
xhr.abort();
startPolling();
},
});
}
请确保abort/cancel
client side
以前的server side request processing
请求正确。
另外如何在通过ajax发送新请求之前中止{{1}}。
希望我们的堆栈用户能帮助我。
答案 0 :(得分:1)
客户端中有一个错误在这里中止
var pollXhr;
function startPolling(){
if(pollXhr){
pollXhr.abort()
}
pollXhr = $.ajax({
type: "POST",
cache: false,
url: "My URL",
dataType: "html",
timeout: 10000,
success: function(response) {
if(response != null && response !="" && response !="null")
$("#sucess").html(response);
},
complete: function(xhr, status) {
pollXhr = null;
startPolling();
},
});
}
注意:这不会停止服务器端处理