我正在构建这个代码来调用calla web服务。 现在我想要这个方法返回一个对象。如何在javascript中使用回调函数
所以这是调用该方法的命令:
Titanium.API.info("CHIAMO IL WS CON DATA NULL");
getDocument("CFDECTEST02",null, function(obj) {
Titanium.API.info("CALL BACK CHIAMATA "+ obj);
});
这是调用Web服务的方法:
function getDocument(fiscalCode, date){
var obj;
var xhr = Titanium.Network.createHTTPClient();
xhr.setTimeout(10000);
xhr.open('POST', "http://url");
xhr.setRequestHeader("Content-Type", "application/json; charset=utf-8");
var myObject = {
cf :fiscalCode,
date_last_synchronization :date
};
xhr.send(JSON.stringify(myObject));
xhr.onerror = function() {
Ti.API.info("SERVIZIO IN ERRORE");
Ti.API.info(this.responseText);
disattivaSemaforo();
};
xhr.onload = function() {
var obj = JSON.parse(this.responseText);
Ti.API.info(this.responseText);
return obj;
};
}
的问题是在回调函数。因为方法getDocument正确调用Web服务并且具有正确的obj,但不调用回调函数。
之前所做的回调是onload函数 –
@ oliv37 - 这不是OP询问的回调。 – Quentin