as2种,大家都熟悉的loadvars在as3种被淘汰了,取而代之的是正统的URLLoader.
与urlloader相关的类有一大摞,让我们从流程上来理解下。
首先要与服务器交换数据,必须要发送数据到服务器,然后服务器接收数据,最后服务器返回数据。
一、准备发送数据 利用URLRequest来定义如何连接,链接到哪里,传递些什么数据。
A.首先要知道服务器地址以及访问的页面,这些都通过urlrequest的url属性来定义。
譬如
var url:String="http://sshong.8866.org/chatroom.jsp";
var req:URLRequest=new URLRequest(url);
或者
var req:URLRequest=new URLRequest();
req.url="http://sshong.8866.org/chatroom.jsp";
B.要知道传递数据的方法是get还是post
于是我们在URLRequest的一个属性叫method的属性来定义。而为了防止我们把post和get输错,as3专门定义了一个类URLRequestMethod,这个类中有两个静态常量(static const)GET、POST分别代表get、post(这种定义静态常量防止用户输错的方法as3中很多)。
即
req.method=URLRequestMethod.POST;
C.要传递些什么数据给服务器呢?也就是服务器接收些什么变量呢?通过URLRequest.data属性来定义
as3中专门定义了一个URLVariables类,在这个类俄实例中中直接定义属性,然后将整个实例赋值给URLRequest的data属性!
var sendVars:URLVariables=new URLVariables();
sendVars.user="sshong";
req.data=sendVars;
到此,我们要传递给服务器的东西已经准备好了,那用什么传,用什么接收呢?这就是URLLoader类了。
二、传递数据:URLLoader有一个load方法,用以将准备好的数据传递给服务器。
如
var loader:URLLoader=new URLLoader();
loader.load(req);
同时,我们要决定如何事先决定好如何对待服务器返回的数据,是当作变量还是二进制还是text?所以在load前要定义,URLLoader有一个属性叫dataFormat,as3专门定义了一个类URLLoaderDataFormat来定义接收回来的数据的属性,该类有三个静态常量TEXT、BINARY、VARIABLES。
如
loader.dataFormat=URLLoaderDataFormat.VARIABLES
三、接收返回数据:URLLoader可以侦听各种流程事件,如complete等。URLLoader接收好数据后,就可以利用URLLoader的data属性来得到接收到的数据,这是英文原文:
If the dataFormat property is URLLoaderDataFormat.TEXT, the received data is a string containing the text of the loaded file.
If the dataFormat property is URLLoaderDataFormat.BINARY, the received data is a ByteArray object containing the raw binary data.
If the dataFormat property is URLLoaderDataFormat.VARIABLES, the received data is a URLVariables object containing the URL-encoded variables.
as学习笔记(十二)--as3与服务器交换数据
发表于2007年5月29日 17:09:00 更新于2007年5月29日 17:09:00
评论
暂无评论添加评论
分类
琐碎文字 As3&Flex RIA UG English CodingArt C++ PHP Webserver E音乐盒 Unity3d C# JS&Html5 Tools mobile golang 最近发表
- golang学习之函数/方法/接口(2022年1月6日 17:50:24)
- golang学习之零值(2022年1月6日 16:38:10)
- hello, 2018(2018年1月15日 22:47:25)
- 字体类型名词解释(2015年1月18日 11:29:14)
- 获取mysql表注释以及列注释(2014年11月13日 15:56:32)
- php连接ms sql数据库的一些问题(2014年9月15日 20:32:14)
- virtualbox虚拟网络:NAT&bridge桥接网络(2014年8月25日 22:51:35)
- php图片加水印(2014年8月15日 22:50:42)
- windows查看端口占用情况(2014年7月31日 21:19:30)
- android安卓activity生命周期(2014年7月12日 10:31:47)
最近回复