Ivandralex
11.04.2008, 02:03
Я пишу jabber клиент на flex. Использую XMLSocket для отправки xml запросов серверу(в моем случае Openfire). Столкнулся с проблемой:запросы, синтасически верные с точки зрения xmpp, не обрабатываются сервером (он просто не отвечает на запросы). Решил проверить, что и как отсылает XMLSocket. Под рукой оказалась прожка на си++, которая слушает порт и выдает все что на него приходит на консоль(после подключения запускатся thread который вызывает receive в цикле). После соединения двух приложений и отправки данных из flex-клиента наблюдал следующее: Отправляем из флекса сообщение длиной, скажем, 20 символов. си++ принимает первые 4 символа сообщения и выходит из блокировки (блокирующего вызова receive). переходит на следующую итерацию цикла, опять уходит в блокировку, и сразу же принимает следующие 4 символа из отправленного сообщения и т.д. пока все сообщение не будет выведено на консоль.
Вопрос. Почему XMLSocket отсылает именно 4 символа? Не является ли это причиной того, что джаббер сервер не обрабатывает мои запросы (например: сервер получает 4 символа, расценивает их как синтаксически неверный запрос и никак не отвечает на него)? Как заставить (если это вообще необходимо в данной ситуации) XMLSocket отсылать большое число символов?
Вопрос. Почему XMLSocket отсылает именно 4 символа? Не является ли это причиной того, что джаббер сервер не обрабатывает мои запросы (например: сервер получает 4 символа, расценивает их как синтаксически неверный запрос и никак не отвечает на него)? Как заставить (если это вообще необходимо в данной ситуации) XMLSocket отсылать большое число символов?