0

我正在使用 Titanium Appcelerator 来开发 iphone 应用程序。我需要调用不同参数的 Web 服务超过 1250 次。我已将 xhr.send() 方法放在 xhr.onload 函数中。它工作正常大约 3-8 次,但之后停止调用。那里没有显示错误或任何问题。请建议。

  function(e){

var xhr = Titanium.Network.createHTTPClient();

var Request = "<RefId>"+idArray[e.index]"</RefId>";
xhr.open("POST", url); 

xhr.setRequestHeader("WWW-Authenticate","Basic");
xhr.setRequestHeader("Content-Type","text/xml", "charset=utf-8");
xhr.setRequestHeader("Content-Length", Request.length); 
xhr.setRequestHeader("SOAPAction", "http://example.com"); 

xhr.onload = function() {


    var doc = Titanium.XML.parseString(this.responseText);
    var type = doc.getElementsByTagName("studentName");

    Ti.API.info(type.item+';'+type.item.length);
    if(type.item.length<1){

        file = Ti.Filesystem.getFile(Ti.Filesystem.resourcesDirectory, "textfile.txt");

    }
    doc=null;
    type=null;


if(idArray.length>e.index){
//alert('Calling API');

var url="http://example.com";
var Request = "<RefId>"+idArray[e.index++]"</RefId>";   
xhr.setTimeout(2500);
xhr.open("POST", url); 
xhr.send(Request);

}

};    
xhr.onerror = function(){
    alert('Error')
};
xhr.send(Request);

}

4

1 回答 1

0

我会尝试每次重新创建客户端,而不仅仅是再次调用发送

于 2013-01-11T00:03:09.753 回答