flex是不能直接访问数据库的,所以可以采用服务的形式进行调用数据,HTTPService、WebServices是比较常用的两种方法,因为接触WebService比较多所以给出其调用方法。
import mx.controls.Alert; import mx.events.FlexEvent; import mx.rpc.events.ResultEvent; import mx.rpc.events.FaultEvent; import mx.rpc.soap.LoadEvent; import mx.rpc.soap.WebService; import mx.controls.Alert; private var str:String = "http://localhost/RaySky/Dvag.asmx?wsdl"; private var webService:WebService; private function onClick():void { //创建并实例化WebService示例,不过之前要先导入WebService类 webService = new WebService(); webService.wsdl = str; webService.loadWSDL(str); //事件侦听 webService.addEventListener(LoadEvent.LOAD, onLoad); webService.addEventListener(ResultEvent.RESULT, onResult); webService.addEventListener(FaultEvent.FAULT, onFault); } private function onLoad(e:LoadEvent):void { //进行相关的操作 } private function onResult(e:ResultEvent):void { } private function onFault(e:FaultEvent):void { trace(e.message); //给用警告,偷懒不愿debug的时候这么来 mx.controls.Alert.show("未能连接到WebService,请检查网络!","错误"); }