FLEX/AIR发送Http请求Web服务器并取得数据。

大家好,其实FLash代码和Java代码十分的相似,HTTP请求代码如下。

package com.codyy.ppmeet.http
{
	import flash.events.Event;
	import flash.events.HTTPStatusEvent;
	import flash.events.IEventDispatcher;
	import flash.events.IOErrorEvent;
	import flash.events.ProgressEvent;
	import flash.events.SecurityErrorEvent;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLVariables;

	public class HttpConnent
	{
		private var urlLoader:URLLoader;
		private var urlVariables:URLVariables;
		private var url:String ="http://10.1.49.137:8080/ppmeet/LoginServlet";//请求的url
		private var request:URLRequest;
		private var resultStr:String;
		public function gotoConn():void{
			urlLoader = new URLLoader();
			//URLLoader 类以文本、二进制数据或 URL 编码变量的形式从 URL 下载数据
			configureListeners(urlLoader);//给urlloader对象添加监听事件
			urlVariables=new URLVariables();
			//使用 URLVariables 类可以在应用程序和服务器之间传输变量。
			//将 URLVariables 对象与 URLLoader 类的方法、URLRequest 类的 data 属性和 flash.net 包函数一起使用。
			urlVariables.username = "peipei";
			urlVariables.password = "123456";
			request= new URLRequest(url);
			//URLRequest 类可捕获单个 HTTP 请求中的所有信息。
			//URLRequest 对象将传递给 Loader、URLStream 和 URLLoader 类的 load() 方法和其他加载操作,以便启动 URL 下载。
			trace("you");
			request.data = urlVariables;//将url请求的数据放入request中
			request.method = URLRequestMethod.POST;//设置请求的类型
			try {
				urlLoader.load(request);//开始发送请求
			} catch (error:Error) {
				trace(error);
			}
		}
		private function configureListeners(dispatcher:IEventDispatcher):void {  
			//加载完成事件;  
			dispatcher.addEventListener(Event.COMPLETE, loaderHandler);  
			//开始访问事件;  
			dispatcher.addEventListener(Event.OPEN, loaderHandler);  
			//加载进度事件;  
			dispatcher.addEventListener(ProgressEvent.PROGRESS, loaderHandler);  
			//跨域访问安全策略事件;  
			dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);  
			//Http状态事件;  
			dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, loaderHandler);  
			//访问出错事件;  
			dispatcher.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler); 
		} 
		private function loaderHandler(event:*):void 
		{ 
			switch(event.type) { 
				case Event.COMPLETE: 
					trace("成功: ");
					resultStr=urlLoader.data;//请求成功,并取得返回值
					break; 
				case Event.OPEN: 
					trace("open: " + event); 
					break; 
				case ProgressEvent.PROGRESS: 
					trace("progress: " + event); 
					break; 
				case SecurityErrorEvent.SECURITY_ERROR: 
					trace("securityError: " + event); 
					break; 
				case HTTPStatusEvent.HTTP_STATUS: 
					trace("httpStatus: " + event); 
					break; 
				case IOErrorEvent.IO_ERROR: 
					trace("ioError: " + event); 
					break; 
				
			} 
	}
}
}


你可能感兴趣的:(String,function,Flash,url,import,web服务)