HTTPService в Flex 3

Задача: общение с web-сервером из приложения на Flex 3.
После беглого ознакомления с объектом mx.rpc.http.HTTPService сразу возникла мысль, что асинхронность мне не очень-то нужна. В ситуации когда:

делаем что-то
забираем с сервера нечто по HTTP
делаем еще что-то

синхронный вызов этого самого сервиса был бы значительно удобнее. Но, увы, такой вариант запроса не реализован в Flex (или я не углядел, но это вряд-ли). Сначала была идея перед каждым вызовом присваивать новые хендлеры на Result.FAULT и Result.RESULT, но потом я вспомнил про наличие mx:states и мне пришло в голову реализовать желаемое следующим образом: организовать свой класс, в котором объявить хендлеры FAULT и RESULT, этот класс реализует свой метод send, аргументами к которому идут собственно URL и имя стейта, в который переходит приложение по вызову хендлера RESULT:

public function send(newState: String, url: String): void 
{
     httpReq.url = url;
     stateToReach = newState;
     httpReq.send(); 

}

где httpReq - объект mx.rpc.http.HTTPService, а stateToReach - поле нашего класса, значение которого будет присвоено Application.application.currentState в хендлере Result.RESULT.

0 коммент.:

Отправить комментарий