Hallo,
Ich habe versucht, ein klassisches PING-PONG Spiel zu programmieren, in dem der eine Schläger lokal und der andere auf einem anderen PC gesteuert wird. Die Kommunikation zwischen Server und (Flash-)Client erfolgt also über Sockets.
Die Verbindung konnte zwar aufgebaut werden und auch ein PING gesendet werden. Im zweiten Frame besteht die Verbindung zwar immer noch, das weitere Versenden von Daten ist jedoch nicht mehr möglich.
Das AS aus dem ersten Frame:
Hier wird also eine Verbindung zu 192.168.2.87 auf Port 2003 hergestellt und PING gesendet. Das Serverscript schickt direkt nach Erhalt alle Daten zurück (hier das "PING"). Soweit funktioniert alles gut.
Im zweiten Frame versuche ich mittels
den Inhalt aus der Variable _root.pkt an den Server zu verschicken. Jetzt kommt aber nichts davon an.
Das Java-Programm auf dem Server:
Anbei noch die fla, swf und class
Vielen Dank schon mal im Vorraus!
rAvEn
Ich habe versucht, ein klassisches PING-PONG Spiel zu programmieren, in dem der eine Schläger lokal und der andere auf einem anderen PC gesteuert wird. Die Kommunikation zwischen Server und (Flash-)Client erfolgt also über Sockets.
Die Verbindung konnte zwar aufgebaut werden und auch ein PING gesendet werden. Im zweiten Frame besteht die Verbindung zwar immer noch, das weitere Versenden von Daten ist jedoch nicht mehr möglich.
Das AS aus dem ersten Frame:
PHP:
var socket:XMLSocket = new XMLSocket();
socket.onData = function(data) {
if (data == _root.pkt)
{_root.ausgabe = _root.pkt}
else
{
_root.ausgabe = "PONG erhalten";
_root.gotoAndPlay(2);
}
};
socket.connect("192.168.2.87", 2003);
_root.butsok.onRelease = function() {
socket.send("PING");
_root.buttontest = "gedrueckt";
}
stop();
Im zweiten Frame versuche ich mittels
PHP:
socket.send(_root.pkt);
Das Java-Programm auf dem Server:
PHP:
import java.net.*;
import java.io.*;
public class Test01 {
public static void main (String args[]) throws IOException {
ServerSocket mySocketServer = new ServerSocket(2003);
System.out.print("Waiting for FlashClient ...\n");
Socket mySocket = mySocketServer.accept();
System.out.print("FlashClient connected.\n\n");
mySocketServer.close();
InputStream in = mySocket.getInputStream();
OutputStream out = mySocket.getOutputStream();
byte buffer[] = new byte[1];
int i;
do
{
i = in.read(buffer, 0, 1);
if (i>-1) {
out.write(buffer, 0, 1);
}
} while(i>-1);
System.out.print("Lost connection to FlashClient.\n\n");
in.close();
out.close();
mySocket.close();
}
}
Anbei noch die fla, swf und class
Vielen Dank schon mal im Vorraus!
rAvEn
Zuletzt bearbeitet: