内容参考Egret官方文档:
http://docs.egret-labs.org/post/manual/net/createconnect.html
但是有些地方官方并没有写的很清楚,在此记录,供大家参考学习:
1-GET请求,解析返回的数据:
代码里面提供了两种把数据解析成Json格式的方法。(注意URLLoaderDataFormat为TEXT)
private getDataFromServer(){ var url:string ="http://httpbin.org/get"; var loader:egret.URLLoader = new egret.URLLoader(); // 设置返回数据格式 loader.dataFormat = egret.URLLoaderDataFormat.TEXT; loader.addEventListener(egret.Event.COMPLETE,this.onGetComplete,this); var request:egret.URLRequest = new egret.URLRequest(url); request.method = egret.URLRequestMethod.GET; loader.load(request); } private onGetComplete(event:egret.Event):void { var loader:egret.URLLoader = <egret.URLLoader> event.target; var data:egret.URLVariables = loader.data; // 1.采用js的解析方法 var js = eval("("+data.toString()+")"); console.log("origin:"+js.origin); // 2.采用json解析器方法 var txt = data.toString(); var obj = JSON.parse(txt); console.log("origin:"+obj.origin); }
2-POST请求,携带数据给服务器:
注:这里面param1,param2均是向服务器发送的参数名称,后面为其值。多个参数之间用&隔开。
request.data = new egret.URLVariables("test=ok&oo=1");
private postDataToServer() { var url:string = "http://httpbin.org/post"; var loader:egret.URLLoader = new egret.URLLoader(); loader.dataFormat = egret.URLLoaderDataFormat.TEXT; loader.addEventListener(egret.Event.COMPLETE, this.onPostComplete, this); var request:egret.URLRequest = new egret.URLRequest(url); request.method = egret.URLRequestMethod.POST; //发送数据格式:"a=1&b=2&c=3" request.data = new egret.URLVariables("param1=ok¶m2=1"); loader.load(request); } private onPostComplete(event:egret.Event):void { var loader:egret.URLLoader = <egret.URLLoader> event.target; var data:egret.URLVariables = loader.data; console.log(data.toString()); // 具体解析参考上面的代码 }
时间: 2024-10-23 01:37:15