Javascript 如何防止调用下一个迭代循环而不从webservice获得回调响应

Javascript 如何防止调用下一个迭代循环而不从webservice获得回调响应,javascript,Javascript,我正在为多个文档逐个调用循环中的Web服务。每个事务至少需要4到5秒才能完成 问题甚至是在从webservice获得回调响应之前,它就开始下一次迭代nodeRef文档了。 如何防止调用下一个迭代而不从webservice获得回调响应 for (var i = 0; i < nodeRef.length; i++) { var config = { url: "slingshot/doclib/ac

我正在为多个文档逐个调用循环中的Web服务。每个事务至少需要4到5秒才能完成

问题甚至是在从webservice获得回调响应之前,它就开始下一次迭代nodeRef文档了。 如何防止调用下一个迭代而不从webservice获得回调响应

for (var i = 0; i < nodeRef.length; i++) {
                  var config = {
                             url: "slingshot/doclib/action/checkout/node/" + nodeRef[i],
                             method: "POST",
                             successCallback: this.onActionEditOfflineSuccess,
                             failureCallback: this.onActionEditOfflineFailure,
                             callbackScope: this
                          };
                         this.serviceXhr(config);
        }



        onActionEditOfflineSuccess: function alfresco_services_ActionService__BulkEditOfflineSuccess(response, originalRequestConfig) {
                        console.log("success");

             }

             onActionEditOfflineFailure: function alfresco_services_ActionService__BulkEditOfflineFailure(response, originalRequestConfig) {
                    console.log("fail");

             }
for(变量i=0;i
尝试以下方法:

 var index = 0;
 onActionEditOfflineSuccess: function 
 alfresco_services_ActionService__BulkEditOfflineSuccess(response, 
 originalRequestConfig) {
        console.log("success");
        callService(index++);
 }

 onActionEditOfflineFailure: function 
 alfresco_services_ActionService__BulkEditOfflineFailure(response, 
 originalRequestConfig) {
    console.log("fail");
    callService(index++)
 }

 function callService(index){
   if(index < nodeRef.length){
     var config = {
       url: "slingshot/doclib/action/checkout/node/" + nodeRef[i],
       method: "POST",
       successCallback: this.onActionEditOfflineSuccess,
       failureCallback: this.onActionEditOfflineFailure,
       callbackScope: this
     };
     this.serviceXhr(config);
   }
 }

 callService(index);
var指数=0;
onActionEditOfflineSuccess:函数
户外服务行动服务离线成功(响应,
原始请求(配置){
控制台日志(“成功”);
callService(index++);
}
onActionEditOfflineFailure:函数
露天服务行动服务脱机故障(响应,
原始请求(配置){
控制台日志(“失败”);
callService(索引++)
}
函数调用服务(索引){
if(索引<节点长度){
变量配置={
url:“弹弓/doclib/action/checkout/node/”+nodeRef[i],
方法:“张贴”,
successCallback:this.onActionEditOfflineSuccess,
failureCallback:this.onActionEditOfflineFailure,
回叫镜:这个
};
this.serviceXhr(config);
}
}
呼叫服务(索引);

什么是
服务xhr
?你在吗?投票的不是我,但最好不要发表问题,然后serviceXhr是开箱即用的方法。在什么环境下?默认情况下,它不存在于浏览器中,也不存在于节点中