在Titanium中创建HTTPClient



我在Titanium中使用了Ti.Network.createHTTPClient,并看到控件既不在onLoad内部,也不在onError内部。原因可能是什么?

 var loader = Titanium.Network.createHTTPClient();
       loader.onload = function() { 
      alert("Hello");   
        }  
      loader.onError = function(e) 
        alert("Error: " + e.error);
     }

加上这两行就可以了!您没有发送请求,也没有发送URL

// add url in here 
loader.open("GET",'[URL HERE]'); 
// Send the request.
loader.send();
var xhrSitelogin = Titanium.Network.createHTTPClient();
xhrSitelogin.open('POST', webservice_url);
xhrSitelogin.send({
method : "userlogin",
username : username,
password : password
});
xhrSitelogin.setTimeout(10000);
xhrSitelogin.onerror = function() {
showAlertBox('Service timed out. Please try again.');
//Hide Indicator
};
xhrSitelogin.onload = function() {
  alert(this.responseText);
   //RESPONSE RECEIVED
};

如果你认为这很有帮助,请投赞成票或标记为最佳。

嗨,尝试一下这个我不确定它是否有效,如果它有效,我会很高兴

var taskRequest=Titanium.Network.createHTTPClient();

    var api_url = 'http://myawesomeapi.heroku.com/users/' + 

Ti.App.Properties.getString("userID")+'/tasks';

    taskRequest.onload = function() {
        var tasks = [];
        // code populating the tasks array
        alert(tasks);
        callback( tasks ); // invoke the callback
    }
    taskRequest.open('GET', api_url, false);
    taskRequest.setRequestHeader('Content-Type', 'application/json');
    taskRequest.send();

<….>

loader.open("POST/GET","URL");
loader.onload(response){
//get the response
console.log(this.responseText);
};
loader.send();
 Use this pattern.

如果需要设置任何标头,则在open()之后/在onload()send() 之前使用loader.setRequestHeader("Content-Type", "application/json; charset=utf-8");

最新更新