我正在構建這個代碼來調用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