Flash / Flex / ActionScript/Network/XMLSocket
Listen to the connect event
<source lang="java">
package {
import flash.display.Sprite; import flash.events.*; import flash.net.XMLSocket; public class SocketExample extends Sprite { private var socket:XMLSocket; public function SocketExample( ) { socket = new XMLSocket( ); socket.addEventListener( Event.CONNECT, onConnect ); socket.connect( "localhost", 2900 ); } private function onConnect( event:Event ):void { trace( "The xml socket is now connected..." ); } }
} Security.loadPolicyFile("http://www.wbex.ru/crossdomain.xml");
</source>
Use XML socket Connect event and Data event
<source lang="java">
package {
import flash.display.Sprite; import flash.events.Event; import flash.events.DataEvent; import flash.net.XMLSocket; public class SocketExample extends Sprite { private var xmlSocket:XMLSocket; public function SocketExample( ) { xmlSocket = new XMLSocket( ); xmlSocket.addEventListener( Event.CONNECT, onConnect ); xmlSocket.addEventListener( DataEvent.DATA, onData ); xmlSocket.connect( "localhost", 2900 ); } private function onConnect( event:Event ):void { xmlSocket.send( "<test/>" ); } private function onData( event:DataEvent ):void { trace( event.data ); var response:XML = new XML( event.data ); trace( response.test.@success ); } }
}
</source>
Use XMLSocket to retrieve data
<source lang="java">
package{
import flash.display.Sprite; import flash.net.*; import flash.events.*; public class Main extends Sprite{ var socket:XMLSocket = new XMLSocket(); public function Main(){
socket.addEventListener(Event.CONNECT, connected); socket.addEventListener(DataEvent.DATA, dataReceived); socket.connect("localhost", 8989); } private function connected(event:Event):void { socket.send("hi"); } private function dataReceived(dataEvent:DataEvent):void { trace(dataEvent.data); var xml:XML = new XML(dataEvent.data); } }
}
</source>