AS3与后台交互—自己封装的简单类

package utils
{
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.SecurityErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import flash.net.URLVariables;

import ui.EnterGamePage;
import ui.MessagePanel;

public class HttpRequest
{
private var _url:String;
private var _urlParameter:URLVariables;
private var _urlLoader:URLLoader;
private var _result:*;
private var _method:String="POST";
private var _onComplete:Function;

public function HttpRequest(URL:String,Parameter:Object=null)
{
_urlParameter = new URLVariables();
url = URL;
parameter = Parameter;
_method = URLRequestMethod.GET;
}
public function execute():void{
try{
var request:URLRequest = new URLRequest(_url);
request.method = URLRequestMethod.GET;
request.data = _urlParameter;
_urlLoader= new URLLoader();
_urlLoader.load(request);
_urlLoader.addEventListener(Event.COMPLETE,onExecuteComplete);
_urlLoader.addEventListener(IOErrorEvent.IO_ERROR,onError);
_urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onSecurityError);
}catch(err:Error){
trace(err.message);
}
}
private function onSecurityError(evt:SecurityErrorEvent):void{
trace("Security error :"+evt.text);
}
private function onExecuteComplete(evt:Event):void{
_urlLoader.removeEventListener(Event.COMPLETE,onExecuteComplete);
_urlLoader.removeEventListener(IOErrorEvent.IO_ERROR,onError);
_result = evt.target.data;
if (_onComplete!=null){
_onComplete(_result);
}
}
private function onError(evt:IOErrorEvent):void{
_urlLoader.removeEventListener(Event.COMPLETE,onExecuteComplete);
_urlLoader.removeEventListener(IOErrorEvent.IO_ERROR,onError);
trace("server error :"+evt.text);
}
public function set parameter(value:Object):void{
if (value){
for (var item:* in value){
_urlParameter[item] = value[item];
}
}
}
public function set url(value:String):void
{
_url = value;
}
public function set onComplete(value:Function):void{
_onComplete = value;
}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值