Форум 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)
-   -   Статусные события класса Service из библиотеки Remoting (http://www.flasher.ru/forum/showthread.php?t=100430)

: hr : 27.08.2007 18:44

Статусные события класса Service из библиотеки Remoting
 
Господа профи, подскажите пожалуйста... Используя библиотеку Flash Remothing AS2.0 от Макромедии пытаюсь работать с AMF. Организовываю подключение к шлюзу с помощью класса Service:

Код:


var myService:Service = new Service("http://examples.macromedia.com/flashservices/gateway", null, "petmarket.api.catalogservice", null, null);

..и не нахожу у данного класса событий onStatus, дабы отследить факт подключения к нужному URL. Есть события класса RelayResponder, отвечающие за вызов сервисов, а как отслудить успешность самого подключения?

Аналогично отсутствует описание данных событий и у класса Connection, однако если посмотреть исходник класса, можно увидеть что он наследник NetConnection, у которого данные события есть(хотя выполняются тоже странно - infoObject не передается):

Код:


dynamic intrinsic class NetConnection
{
function onResult(infoObject:Object):Void;
function onStatus(infoObject:Object):Void;
}

Что это - у меня кривые руки, левые доки или как? :confused:

etc 27.08.2007 19:12

А на серверной стороне должен быть FMS, чтобы был onStatus. Это же не сокет, нет никакого подключения.

: hr : 28.08.2007 12:34

не сокет - понятно..., но каким-то образом должно быть можно отследить подключение к гейтвэю? Просто факт подключения или UrlNotFound. Что-то вроде onLoad.

etc 28.08.2007 12:42

А какое подключение может быть у HTTP-коннекта? Это же обычный запрос-ответ, всего лишь. Что он будет спрашивать на сервере? Вот когда потребуется запрос, ты делаешь PendingCall. Хотя, конечно, можно было бы проверять наличие сервиса на хосте.
Не ковырялся специально, но практически уверен, что никаких запросов твоя строка не делает, пока не захочешь.

: hr : 28.08.2007 12:54

Проверил дебагером HTTP, ты совершенно прав - сама по себе строчка
Код:

service = new Service(gatewayUrl, null, "ServiceName");
ничего не делает. Запрос по http идет только по факту вызову сервиса. Единственный минус - нет возможности проверить наличие сервиса... у Responder'а FaultEvent в случае ошибки url и последующего обращения к сервису не вызывается.


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

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