Я вынужден работать с ActionScript / Adobe Air.Исходя из Java-фона.Я не могу понять, что я делаю здесь неправильно, может быть, кто-то может помочь.По сути, я хотел бы, чтобы функция возвращала XMLNode
, которые она получает.
public function getXmlWebpage(address:String):XMLNode {
var service:HTTPService = new HTTPService();
var xmlResult : XMLNode = null;
service.method = "GET";
service.url = address;
service.resultFormat = HTTPService.RESULT_FORMAT_XML;
function onResult(result:ResultEvent):void{
trace("status code " + result.statusCode);
var node : XMLNode = result.result as XMLNode;
trace("node has NS URI " + node.namespaceURI);
xmlResult = node;
}
function onFail(event:FaultEvent):void{
trace("fail function of getXmlWebpage called.");
Alert.show("error communicating with host " + event.fault.toString());
}
service.addEventListener(FaultEvent.FAULT, onFail);
service.addEventListener(ResultEvent.RESULT, onResult);
service.send(null);
trace("return value will be " + xmlResult)
return xmlResult;
}
Но в журнале говорится (да, в таком порядке):
return value will be null
status code 200
node has NS URI http://www.w3.org/2005/Atom
Что я не получаюВот?Не могу ли я изменить xmlResult
с onResult
?