итак - у меня есть клиент Socket (не XMLSocket, просто Socket). У меня также есть собственный сценарий PHP на моем сервере, который прослушивает порт X. Мой клиент пытается подключиться к нему.
Все работает нормально, безопасность и связь, синхронизация и все остальное. Но - Flash Player (на самом деле среда выполнения AIR) выдает ошибку при попытке подключения, но ТОЛЬКО когда сервер не работает ... Что? Это действительно странно - ошибка фактически обрабатывается с помощью try catch (IOError), и, что еще более странно, строка, указанная в выводе как строка ошибки, - это строка, в которой я просто СОЗДАЮ сокет ...?
Хм ...
Вывод:
Error #2044: Unhandled IOErrorEvent:. text=Error #2031: Socket Error.
at ---.server::Client()[---/server/Client.as:167]
at Function/<anonymous>()[---_fla.MainTimeline::frame1:430]
at Function/<anonymous>()
at Function/<anonymous>()[---_fla.MainTimeline::frame1:375]
Код:
try {
Sock = new Socket(); // THIS is line 167
} catch (e:IOError){
log("Could not connect!");
status = "disconnected";
}
На самом деле это не имеет значения - сервер должен быть все еще в сети, ошибки не появляются ... Но игнорировать ошибку - нехорошо.
И еще кое-что: когда я закомментирую строку, в которой я на самом деле подключаюсь с помощью Sock.connect (...) - это не вызывает ошибку, но, очевидно, не работает ... Кроме того, часть подключения также в блоке try catch (IOError) ...
ПОЧЕМУ Flash сообщает, что проблема находится в строке 167, когда явно где-то еще? И / или в чем может быть проблема?