URLLoader详解

转自:http://bb-bing.blog.sohu.com/94894920.html

URLLoader把以前XML,LoadVars与服务器交互的功能都接管过来了,尽管如此,我们要实现不同的功能,还得分头行动.同时,需要一些相关类的辅助 - URLLoaderDataFormat,URLRequest,URLVariables,
加载字符串文本, 需要注意的是,如果没有定义请求方式,则默认为HTTP GET 方法加载,而且,URLLoader.dataFormat 的默认值为 URLLoaderDataFormat.TEXT。

var   urlRequest : URLRequest  =  new   URLRequest () ;
urlRequest . url  =  " TEXT " //文本 地址
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  ;
//

加载XML格式文档,和加载文本类型数据基本一样,只是在加载成功后,URLLoader.data属性为XML类实例..

var   urlRequest : URLRequest  =  new   URLRequest () ;
urlRequest . url  =  " XML " //文本 地址
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 ()) ;
}

 


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值