java代码(需要xsocket 下面有下载):
test.java(主文件)
package test;
import org.xsocket.connection.*;
public class test {
protected static IServer srv = null;
public static void main(String[] args) {
try{
srv = new Server(8090,new xSocketDataHandler());
srv.run();
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}
protected static void shutdownServer() {
try{
srv.close();
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}
}
xSocketDataHandler.java文件
package test;
import java.io.IOException;
import java.nio.BufferUnderflowException;
import java.nio.channels.ClosedChannelException;
import org.xsocket.MaxReadSizeExceededException;
import org.xsocket.connection.IDataHandler;
import org.xsocket.connection.INonBlockingConnection;
public class xSocketDataHandler implements IDataHandler {
@Override
public boolean onData(INonBlockingConnection nbc) throws IOException,
BufferUnderflowException, ClosedChannelException,
MaxReadSizeExceededException {
try{
String data = nbc.readStringByDelimiter("\0");
nbc.write(data + "\0");
if(data.equalsIgnoreCase("SHUTDOWN"))
{
test.shutdownServer();
}
}catch(Exception ex){
System.out.println(ex.getMessage());
}
return true;
}
}
as3.0代码
package {
import flash.display.Sprite;
import flash.net.XMLSocket;
import flash.events.DataEvent;
import flashx.textLayout.events.DamageEvent;
public class mysocket extends Sprite {
public function mysocket() {
var xmlSocket:XMLSocket = new XMLSocket();
xmlSocket.connect("192.168.0.101",8090);
xmlSocket.addEventListener(DataEvent.DATA,onIncomingData);
xmlSocket.send("Hello World");
xmlSocket.send("SHUTDOWN");
}
function onIncomingData(event:DataEvent):void{
trace("["+event.type+"]"+event.data);
}
}
}