使用 jQuery 在失败时重试 AJAX 请求的最佳方法是什么? [英] What's the best way to retry an AJAX request on failure using jQuery?
本文介绍了使用 jQuery 在失败时重试 AJAX 请求的最佳方法是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
伪代码:
$(document).ajaxError(function(e, xhr, options, error) {
xhr.retry()
})
更好的是某种指数退避
推荐答案
是这样的:
$.ajax({
url : 'someurl',
type : 'POST',
data : ....,
tryCount : 0,
retryLimit : 3,
success : function(json) {
//do something
},
error : function(xhr, textStatus, errorThrown ) {
if (textStatus == 'timeout') {
this.tryCount++;
if (this.tryCount <= this.retryLimit) {
//try again
$.ajax(this);
return;
}
return;
}
if (xhr.status == 500) {
//handle error
} else {
//handle error
}
}
});
这篇关于使用 jQuery 在失败时重试 AJAX 请求的最佳方法是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文