![]() |
XML - sendAndLoad, XMLSocket - только send
Здравствуйте!
Помогите разобраться плиз Есть приложение, где флешка с сервером часто обмениваются хмл-ками через sendAndLoad (класс XML), но немного медленно. Можно ли использовать XMLSocket для ускорения обменом данных? И нужно ли? Дело в том, что серверу отправляются запросы (в виде хмл), и на них должны приходить ответы(в виде хмл). А у класса XMLSocket нет метода sendAndLoad. Есть только send. Сокет-соединение, я так понимаю, может быть только одно? Т.е. так нельзя: Код:
soc1.onXML(ovet1) |
>>у класса XMLSocket нет метода sendAndLoad
нет потому что не нужен для общения через сокет на сервере тоже должен быть этот самый сокет, открыт порт на прослушку. все это у вас есть? и зачем вам два соединения для одного клиента? если на пути от вашего клиента до сервера встретится "хмурый админ" и перекроет этот самый порт или просто обычный прокси, все сразу перестанет работать. |
Да, на сервере есть сокет и порт на прослушку открыт.
Вы правильно сказали, 2 соединения не нужны. Но с обычными хмл делаю так: посылаю запрос sendAndLoad-ом, указываю там вторым параметром, куда должен прийти ответ. Когда ответ приходит, то понятно, на какой запрос. И теперь я могу на ответ запроса1 делать действия1, на ответ запроса2-действия2. А с XMLSocket как? Передавать серверу id в запросе, а он возвращает тот самый id в ответе? |
вообще запросы клиента обрабатываются сокет-сервером. как - это зависит от самого сокет сервера.
|
Да, они должны обрабатываться и отдавать мне ответы,
(например некие обьекты, которые я должна отображать) Вот по этому и спрашиваю Запросы разные. Соответственно их надо по-разному обрабатывать ответы. Решили делать так: серверу в запросе передается id, в ответе он возвращает тот же id, чтоб знать, на какой запрос пришел ответ |
Все будет работать так как ты реалезуеш. Допустим ты шлеш серверу пакетв ида KillMePlease: i wont to die, сервер получает пакет и обрабатывает его. В этом случае все что до : это рабочая информация все что после это трейлинг т.е там может бытьв се что угодно. В этом случае KillMePlease это команда для сервера, обработав пакет сервер увидил вкоманду KillMePlease и выполняет определенное действие.... Далее сервер шлет ответ клиенту KillMePlease: success, клиент получил пакет и также как и сервер его обработал увидил команду KillMePlease и в трейлинге подтверждение значит все >_>. Если тебе удобно работать с xml шли xml структуры. Ответы от сервера обрабатываются одинакого, но в зависимости от содержания выполняются разные действия :)
|
спасибо:)
|
| Часовой пояс GMT +4, время: 07:09. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.