Pregunta

Hola Creo que mi cliente Flash está perdiendo algunos paquetes que el servidor envía, debido a que algunos paquetes se unen entre sí por lo tanto, creo que los deja caer.

Aquí está mi packetHandler flash

  private var xmlsock:XMLSocket;
  this.xmlsock = new XMLSocket();
  xmlsock.connect("127.0.0.1", 1234);
  this.xmlsock.addEventListener(DataEvent.DATA, this.packetHandler);


  public function packetHandler(event:DataEvent):void {
   var packet:String = event.data;
   var args:Array = packet.split(":");
   if(args.length <= 0) return;

   switch(args[0]) {
    case 'w': //waiting
     ExternalInterface.call("waiting");
     break;
    case 'u': //user count
     if(args.length >= 2)
      ExternalInterface.call("userCount", args[1]);
     break;
                                //... etc handlers ...
   }
 }

Una posible paquete Olfateé enviado por el servidor era.

u: 105.w. aka (75 3A 31 30 35 00 77 00)

por lo que el paquete de esperar que nunca entró.

¿Cómo iría de corregir este error .. estoy usando XMLSocket

¿Fue útil?

Solución

K resuelto si alguien necesita ayuda con esto resulta que sólo puede hacer esto

paquetes var: Array = data.split ( "\ x00");

Otros consejos

Utilice un flash.net.Socket lugar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top