Как разделить пакеты в Flash, xmlsocket
-
01-10-2019 - |
Вопрос
Здравствуйте, я верю, что мой Flash Client теряет некоторые пакеты, которые сервер отправляет, потому что некоторые пакеты объединяются, поэтому я считаю, что это бросает их.
Вот моя упаковка в 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 ...
}
}
Возможный пакет, который я понюхал, отправленный сервером, был.
U: 105.W. ака (75 3A 31 30 35 00 77 00)
Так что ожидание пакета никогда не вошел.
Как бы я пошел по исправлению этой ошибки .. Я использую xmlsocket
Решение
K решил, если кому-то нуждается в помощи с этим оказывается, вы можете просто сделать это
VAR пакеты: Array = data.split (" x00");
Другие советы
Использовать flash.net.Socket
вместо.
Не связан с StackOverflow