Не «одновременно», нет. С одной стороны, у вас есть только один (фоновый) поток для работы, и этот поток может делать только одну вещь за раз, поэтому, как бы вы ни писали свой код, один из запросов всегда будет инициирован первым.
Если вы спрашиваете, можете ли вы отправить запрос обеим службам за один вызов, то снова ответ - нет (поскольку у обоих будут разные URL-адреса, а API-интерфейсы ActionScript не принимают массивы в качестве URL-адреса параметры, они принимают только строки).
Тем не менее, я полагаю, вы могли бы, так сказать, «подделать это», если бы ваше приложение Flex вызывало службу, которую вы написали самостоятельно - например, в C #, - и вызывало эту службу (синхронно) в Google, затем в Yahoo затем верните управление обратно в свое приложение Flex вместе с измененным набором результатов, состоящим из того, что случилось с Google и Yahoo соответственно.
Если я не понимаю (или переосмысливаю) вопрос. ;)
Вот пример кода, иллюстрирующий один из способов обработки вызова двух служб - не одновременно, а один за другим, используя mx.rpc.HTTPService :
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="onCreationComplete()">
<mx:Script>
<![CDATA[
import mx.rpc.http.HTTPService;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
private function onCreationComplete():void
{
callGoogle();
callYahoo();
}
private function callGoogle():void
{
var svc:HTTPService = new HTTPService();
svc.url = "http://api.google.com/someservice.xml";
svc.addEventListener(ResultEvent.RESULT, onGoogleResult, false, 0, true);
svc.addEventListener(FaultEvent.FAULT, onGoogleFault, false, 0, true);
svc.send();
}
private function callYahoo():void
{
var svc:HTTPService = new HTTPService();
svc.url = "http://api.yahoo.com/someservice.xml";
svc.addEventListener(ResultEvent.RESULT, onYahooResult, false, 0, true);
svc.addEventListener(FaultEvent.FAULT, onYahooFault, false, 0, true);
svc.send();
}
private function onGoogleResult(event:ResultEvent):void
{
trace(event.result);
}
private function onGoogleFault(event:FaultEvent):void
{
trace(event.fault.message);
}
private function onYahooResult(event:ResultEvent):void
{
trace(event.result);
}
private function onYahooFault(event:FaultEvent):void
{
trace(event.fault.message);
}
]]>
</mx:Script>
</mx:Application>
Надеюсь, это поможет! Отпишитесь с комментариями, и я буду следить.