egret与服务器端通信(get/post)


构建通信请求

五个类:

URLRequest, URLLoader, URLLoaderDataFormat, URLRequestMethod, URLVariables

一、最简单的通信请求

URLLoader对象负责网络的连接状态操作,同时负责接收网络回传的数据。

URLRequest对象负责网络通信数据

创建最简单通信请求我们需要使用URLLoader和URLRequest两个类。

private urlloader:egret.URLLoader;

this.urlloader = new egret.URLLoader();

private urlreq:egret.URLRequest;

this.urlreq = new egret.URLRequest();

urlreq.url = “http://httpbin.org/user-agent”;

this.urlloader.load( urlreq );

this.urlloader.addEventListener(egret.Event.COMPLETE, this.onComplete, this);

private onComplete(event:egret.Event):void{

console.log(this.urlloader.data);

}

二、读取不同数据格式  URLLoaderDataFormat

在Egret中,我们提供了五种可用的数据格式,分别是:

(1) 二进制格式     BINARY

(2) 文本格式       TEXT

(3) URL编码格式    VARIABLES

(4) 位图纹理格式   TEXTURE

(5) 音频格式。     SOUND

以上五种数据格式的设置均需要 URLLoaderDataFormat 类。如果想更改默认的文本格式,可以修改 URLLoader 中的 dataFormat 属性。

this.urlloader.dataFormat = egret.URLLoaderDataFormat.VARIABLES;

三、POST与GET URLRequestMethod

this.urlreq.method = egret.URLRequestMethod.POST;

四、发送带参数的请求  URLVariables

一般来说,向服务器提交数据实际上总是包含两个步骤,提交数据与读取返回信息。

提交的数据放入 URLRequest 对象的 data 属性值,并通过 URLRequest 对象提交。

读取服务器端脚本返回的数据

(1)向服务器发参数

this.urlreq.data = new egret.URLVariables(“test=ok”);

(2)从服务器端取数据

在回调函数onPostComplete方法里:

var loader:egret.URLLoader = <egret.URLLoader>event.target;

var data:event.URLVariables = loader.data;

console.log(data.toString);


发表评论

电子邮件地址不会被公开。

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>