`

Flex的Socket

阅读更多

以前提到Flex建立Socket的时候要收发一套安全内容,当时是根据安全内容,用Python模拟Flex,与Java通信。

现在禹同学提供了一个Flex的代码,记录一下。

 

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
	<mx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import flash.net.Socket;
			
			private var socket:XMLSocket = new XMLSocket();
			
			internal function init():void{
				socket.addEventListener(Event.CLOSE,closehandler);
				socket.addEventListener(Event.CONNECT,connectHandle);
				socket.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandle);
				socket.addEventListener(DataEvent.DATA,dataHandle);
				socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityHandle);
			}
			
			internal function closehandler(evt:Event):void{
				Alert.show("连接关闭");
//				trace("连接关闭");
			}
			internal function connectHandle(evt:Event):void{
				Alert.show("连接建立");
//				trace("连接建立");
			}
			internal function ioErrorHandle(evt:IOErrorEvent):void{
//				trace("io异常");
			}
			internal function securityHandle(evt:SecurityErrorEvent):void{
//				trace("安全异常");
			}
			internal function dataHandle(evt:DataEvent):void{
				var response:XML = new XML(evt.data);
//				trace(response.toXMLString());
				text1.text = response.toXMLString();
//				while(socket.bytesAvailable){
//					msg += socket.readUTFBytes(socket.bytesAvailable);
//					trace(msg);
//				}
//				var arr:Array = msg.split('\n');
//				for(var i:int = 0 ; i <arr.length;i++){
//					if(arr[i].lenght>1){
//						var myPattern:RegExp = /\r/;
//						arr[i] = arr[i].replace(myPattern,"");
//						trace(arr[i]);
//						Alert.show(arr[i]);
//					}
//				}

			}			
			internal function dosocket():void{
				socket.connect( "127.0.0.1",9099);
				socket.send("<policy-file-request/>");
//				socket.writeUTF("<policy-file-request/>");
			}
			
		]]>
	</mx:Script>
	<mx:Panel width="400" height="300">
		<mx:Button label="connection" click="dosocket()" textAlign="center"/>
		<mx:Spacer/>
		<mx:Spacer/>	
		<mx:Text id="text1"  width="100%" height="50%"/>
	</mx:Panel>
</mx:Application>

 

 

分享到:
评论
2 楼 levin_china 2014-04-17  
XMLSocket 有send方法。
1 楼 levin_china 2014-04-17  
socket 没有send方法

相关推荐

Global site tag (gtag.js) - Google Analytics