PDA

Просмотр полной версии : Архитектура обмена данными с web сервером на php


razerw
28.06.2013, 18:09
Всем привет. Разрабатываю онлайн игру Дурак. Логика игра вычисляется на стороне сервера в php. Соответственно в php необходимо передавать данные, думаю что обмен данными лучше всего передавать в xml. as3 имеет на борту два класса URLRequest и сокетное соединение XMLSocket. По сути своей ту игру которую я делаю имеет пошаговый режим игры. и скорее всего для обмена данными подошла бы архитектура URLRequest . Но есть сомнения того, что будут трудности с прослушиванием ответа с сервера. Подскажите как вы реализовываете обмен данными? Если можно с небольшими примерчиками.

KumoKairo
28.06.2013, 19:25
Нет, прослушивание ответа с сервера нет совершенно никаких - подписываете URLLoader на событие Event.COMPLETE и вперед

делай рас (http://stackoverflow.com/questions/12106735/as3-to-php-to-mysql)
делай два (http://stackoverflow.com/questions/15709535/retrieving-information-from-mysql-via-php-to-as3)

razerw
28.06.2013, 23:57
А как же тогда обрабатывать ответ сервера? метод асинхронный, соответственно продолжение работы скрипта после ответа сервера. если я не ошибаюсь Event.COMPLETE слушает завершение отправки запроса серверу. По ссылкам вижу отправляются переменные. мне необходимо отправлять XML, и уже только после обработки запроса сервером, получить от него ответ и далее продолжить игровой процесс.

Babylon
29.06.2013, 00:25
Ошибайтесь Event.COMPLETE возникает когда приходит ответ. Даже без php:)
Сетевой объект, который завершил загрузку на клиенте.

razerw
29.06.2013, 01:10
То есть получается для реализации своего приложения мне достаточно обойтись URLRequest? Интересно игры вконтакте такие как к примеру зомби ферма тюряга, тоже используют концепцию URLRequest ?

bifidokk
30.06.2013, 13:25
нет, на сервере может крутиться процесс, к которому флешка цепляется по сокету и обменивается с ним данными. у тюряги и фермы серевер скорее всего на c++ и флешка общается с ним по сокету

razerw
01.07.2013, 08:48
а почему предпочтение в основном выпадает на С++? Чем веб технологии плохи?

KumoKairo
01.07.2013, 09:53
По моему более популярный способ - это сервер на Java - там все веселее и проще, плюс всякие nio плюшки для расширяемых проектов и куча всяких фреймворков

Веб технологии менее "быстрые", все на запросах и ответах (http) а с серверами полноценное соединение с асинхронной передачей данных, то есть сервер без всяких запросов со стороны клиента ему (клиенту) может отправить данные. Плюс ко всему поверх TCP (а обычное соедиение с сокетами во flash требует именно TCP) можно построить свой протокол передачи и не привязываться к требованиям POST и GET запросов

mooncar
01.07.2013, 10:23
razerw, будьте внимательнее, для обсуждения взаимодействия с серверами есть специальный раздел.