Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   XML - sendAndLoad, XMLSocket - только send (http://www.flasher.ru/forum/showthread.php?t=111030)

JaLav 14.04.2008 16:43

XML - sendAndLoad, XMLSocket - только send
 
Здравствуйте!
Помогите разобраться плиз
Есть приложение, где флешка с сервером часто обмениваются хмл-ками
через sendAndLoad (класс XML), но немного медленно.
Можно ли использовать XMLSocket для ускорения обменом данных?
И нужно ли?

Дело в том, что серверу отправляются запросы (в виде хмл), и на них должны приходить ответы(в виде хмл). А у класса XMLSocket нет метода sendAndLoad.
Есть только send.

Сокет-соединение, я так понимаю, может быть только одно? Т.е. так нельзя:
Код:

soc1.onXML(ovet1)
{
действия1
}
soc1.send(zapros1)
soc2.onXML(ovet2)
{
действия2
}
soc2.send(zapros2)

?

alexcon314 14.04.2008 17:20

>>у класса XMLSocket нет метода sendAndLoad
нет потому что не нужен
для общения через сокет на сервере тоже должен быть этот самый сокет, открыт порт на прослушку. все это у вас есть? и зачем вам два соединения для одного клиента?
если на пути от вашего клиента до сервера встретится "хмурый админ" и перекроет этот самый порт или просто обычный прокси, все сразу перестанет работать.

JaLav 14.04.2008 17:43

Да, на сервере есть сокет и порт на прослушку открыт.
Вы правильно сказали, 2 соединения не нужны.
Но с обычными хмл делаю так: посылаю запрос sendAndLoad-ом, указываю там вторым параметром, куда должен прийти ответ. Когда ответ приходит, то понятно, на какой запрос. И теперь я могу на ответ запроса1 делать действия1, на ответ запроса2-действия2.
А с XMLSocket как?
Передавать серверу id в запросе, а он возвращает тот самый id в ответе?

alexcon314 15.04.2008 00:19

вообще запросы клиента обрабатываются сокет-сервером. как - это зависит от самого сокет сервера.

JaLav 15.04.2008 01:23

Да, они должны обрабатываться и отдавать мне ответы,
(например некие обьекты, которые я должна отображать)
Вот по этому и спрашиваю
Запросы разные. Соответственно их надо по-разному обрабатывать ответы. Решили делать так: серверу в запросе передается id, в ответе он возвращает тот же id, чтоб знать, на какой запрос пришел ответ

qazwsx 15.04.2008 08:49

Все будет работать так как ты реалезуеш. Допустим ты шлеш серверу пакетв ида KillMePlease: i wont to die, сервер получает пакет и обрабатывает его. В этом случае все что до : это рабочая информация все что после это трейлинг т.е там может бытьв се что угодно. В этом случае KillMePlease это команда для сервера, обработав пакет сервер увидил вкоманду KillMePlease и выполняет определенное действие.... Далее сервер шлет ответ клиенту KillMePlease: success, клиент получил пакет и также как и сервер его обработал увидил команду KillMePlease и в трейлинге подтверждение значит все >_>. Если тебе удобно работать с xml шли xml структуры. Ответы от сервера обрабатываются одинакого, но в зависимости от содержания выполняются разные действия :)

JaLav 15.04.2008 12:10

спасибо:)


Часовой пояс GMT +4, время: 07:09.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.