as3深入了解URLLoader加载php和xml
URLLoader把以前XML,LoadVars与服务器交互的功能都接管过来了,尽管如此,我们要实现不同的功能,还得分头行动.同时,需要一些相关类的辅助 - URLLoaderDataFormat,URLRequest,URLVariables,
加载字符串文本, 需要注意的是,如果没有定义请求方式,则默认为HTTP GET 方法加载,而且,URLLoader.dataFormat 的默认值为 URLLoaderDataFormat.TEXT。
var urlRequest:URLRequest = new URLRequest(); urlRequest.url = “TEXT”; //CuPlayer.com文本 地址 var ul:URLLoader = new URLLoader(); //ul.data = URLLoaderDataFormat.TEXT ; ul.load(urlRequest); ul.addEventListener(Event.COMPLETE,onComplete); function onComplete(evt:Event):void { trace(evt.target.data); }
如 果加载的文本内容为key-value对,需要设置dataFormat属性为URLLoaderDataFormat.VARIABLES,在加载成功 后,可以通过传入加载文件的内容,使用 URLVariables 类来分析数据.如上面的onComplete方法可以..
ul.dataFormat = URLLoaderDataFormat.VARIABLES; function onComplete(evt:Event):void { var params:URLVariables = URLVariables(evt.target.data); trace(params.name); }
通常,我们需要先给服务器一些信息,然后才能得到服务器返回的文本信息.要使用 POST 方法发送数据,则需要设置
request.method = URLRequestMethod.POST. urlRequest.method = URLRequestMethod.GET;//可以不必声明,默认 urlRequest.url=”text.php?username=sam”; //or urlRequest.method = URLRequestMethod.POST;// var param:URLVariables = new URLVariables(); param.username= “sam”; urlRequest.data = param ; // CuPlayer.com
加载XML格式文档,和加载文本类型数据基本一样,只是在加载成功后,URLLoader.data属性为XML类实例..
var urlRequest:URLRequest = new URLRequest(); urlRequest.url = “XML”; //CuPlayer.com文本 地址 var ul:URLLoader = new URLLoader(); ul.load(urlRequest); ul.addEventListener(Event.COMPLETE,onComplete); function onComplete(evt:Event):void { trace(XML(evt.target.data).toXMLString()); }
向服务器POST发送XML并接收(sendAndLoad)
var dataXML:XML = ;//xml var request:URLRequest = new URLRequest(”getInfo.php”); request.contentType = “text/xml”; request.data = dataXML.toXMLString(); request.method = URLRequestMethod.POST; var loader:URLLoader = new URLLoader(); loader.load(request); loader.addEventListener(Event.COMPLETE , onComplete); function onComplete(evt : Event) : void { var l : URLLoader = evt.target as URLLoader ; var returnXML : XML = l.data as XML ; //得到返回的xml数据 trace(returnXML.toXMLString()); }
转自:http://www.cuplayer.com/player/PlayerCodeAs/2013/0319763.html