Поведение AsyncToken с Socket- Flex
Я использую FlashSocket на своей клиентской стороне для выполнения вызовов socket.io на сервере node.js.
Но я хочу, чтобы в слушателях событий сокета были доступны конкретные значения и ссылки на функции.
Один подход, который пришел мне в голову, состоял в том, чтобы передать требуемые значения вместе с запросом и заставить сервер отправлять эти параметры обратно вместе с данными. Но это, похоже, не помогает, так как мне нужно, чтобы обработчики функций также возвращались с результатом.
Я делаю это с помощью http-запроса:
var token:AsyncToken = _service.send(item.params);
token.id = _tokenId;
token.params = item.params;
token.handler = item.resultHandler; // this would be called later in result or fault event handlers.
Есть ли способ добиться этого в гибких розетках?
Заранее спасибо.
1 ответ
Вы можете использовать класс AsyncResponder и анонимные функции.
var token:AsyncToken = _service.send(item.params);
token.addResponder(new AsyncResponder(
function(event:Object, token:Object = null):void {
// result handler, it has access to item.params, etc.
},
function(error:FaultEvent, token:Object = null):void {
// fault handler, it has access to item.params, etc.
}
));