我正在使用 jquery $.ajax() 函数调用 Web 服务。如果 Web 服务调用出错,我需要再调用 Web 服务 2 次。
最好的方法应该怎么做?
在过去的项目中,我只是使用 Settimeout 来检查 Ajax 调用返回的空结果....例如
var failcounter = 0;
if (CHECK SOME CONDITION HERE FOR RESULTS && failcounter < 4){
//IF FOUND TO BE EMPTY THEN WE ADD ONE TO THE 'COUNTER' THEN USE SETTIMEOUT TO RE-TRY...
setTimeout(function () {
failcounter++;
yourajaxFunctioncall();
}, 5000);
};
这真的很粗糙,只是被扔在一起 - 因为我没有看到你的代码,所以并不是所有的都可以通过剪切/粘贴来工作 - 但希望你明白,使用“计数器”来跟踪限制次数重试...如果没有找到结果,请使用 settimeout 重试。我还使用 Ajax 'error:'(类似于 'success:')来保存特定功能以在失败时尝试 - 这样可能更容易 - 只是取决于你想如何处理我猜。祝你好运