He creado una aplicación de prueba para conectar con un servidor haciendo que envíe y reciba datos, pero esta sólo recibe datos despues de haber enviado algo.
Es decir, cuando conecto con el servidor, este envía un paquete "Hello World" que se debería mostrar en un campo de texto de la aplicación en Flash, pero no se muestra hasta que envío algo desde el cliente, entonces se muestra el "Hello World" más la respuesta del paquete envíado.
Nunca se reciben los datos en su momento, sólo despues de enviar algo.
El AS que estoy usando es este:
Código:
¿Alguien me puede enviar una ayuda diciendome dónde estoy fallando?var xsTestSocket: XMLSocket = new XMLSocket(); cbtSendData._visible = false; cbtDc._visible = false; cbtCallFW.onRelease = function():Void { var bSuccess:Boolean = xsTestSocket.connect(ctaServerIP.text, ctaServerPort.text); } xsTestSocket.onConnect = function(bSuccess:Boolean):Void { if(bSuccess) { cbtCallFW._visible = false; cbtDc._visible = true; cbtSendData._visible = true; } else { ctaServerReply.text = "Error, tiempo máximo de intento de conexión excedido."; } } xsTestSocket.onData = function(reply:String):Void { trace("Datos: "+reply); if(reply != ''){ ctaServerReply.text = reply; } } cbtDc.onRelease = function():Void { cbtCallFW._visible = true; cbtDc._visible = false; cbtSendData._visible = false; xsTestSocket.close(); } cbtSendData.onRelease = function():Void { var sFWCmd:String = ctaServerQuest.text; xsTestSocket.send(sFWCmd); }
Gracias.