25juin/080
Flex URLLoader – Envoyer des paramètres avec la propriété data
Vous pouvez envoyer des paramètres en utilisant URLLoader comme pour les HTTPService. Pour assigner un paramètre, il faut assigner une valeur à la propriété "data" de l'objet URLRequest utilisé pour faire la requête. L'object URLRequest peut envoyer des données binaires pour des String. Si vous assignez un ByteArray à la propriété data, il sera envoyé comme birary. Si vous assignez un objet URLVariables à la propriété "data", la donnée est envoyée au format URL-encoded. Sinon, la donnée est convertie en String.
L'exemple suivant envoie un paramètre quand il requête la donnée de l'état:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" horizontalAlign="center" verticalAlign="middle"
initialize="initializeHandler(event)">
<mx:Script>
<![CDATA[
private var _countriesService:URLLoader;
private var _statesService:URLLoader;
private function initializeHandler(event:Event):void{
_countriesService = new URLLoader();
_countriesService.addEventListener(Event.COMPLETE, countriesCompleteHandler);
_countriesService.load(new URLRequest("http://www.rightactionscript.com/states/xml/countries.xml"));
_statesService = new URLLoader();
_statesService.addEventListener(Event.COMPLETE, statesCompleteHandler);
XML.ignoreWhitespace = true;
}
private function countriesCompleteHandler(event:Event):void{
var xml:XML = new XML(_countriesService.data);
country.dataProvider = xml.children();
}
private function statesCompleteHandler(event:Event):void{
var xml:XML = new XML(_statesService.data);
state.dataProvider = xml.children();
}
private function changeHandler(event:Event):void{
var request:URLRequest = new URLRequest("http://www.rightactionscript.com/states/xml/states.php");
var parameters:URLVariables = new URLVariables();
parameters.country = country.value;
request.data = parameters;
_statesService.load(request);
}
]]>
</mx:Script>
<mx:Panel title="Services URLLoader"
paddingBottom="30" paddingLeft="30" paddingRight="30" paddingTop="30">
<mx:Label text="Choisir le pays"/>
<mx:ComboBox id="country" change="changeHandler(event)"/>
<mx:Label text="Choisir l'état"/>
<mx:ComboBox id="state"/>
</mx:Panel>
</mx:Application>
Flex Source Code Download: Télécharger le code source complet de l'application
This movie requires Flash Player 11
Vous pouvez utiliser la propriété "method" pour spécifier comment la data devra être envoyée. Les valeurs possibles sont flash.net.URLRequestMethod.POST et flash.net.URLRequestMethod.GET.
Articles similaires
- Flex URLLoader – Envoyer des requêtes et traiter le résultat (exemple)
- Flex HTTPService – Envoyer des paramètres avec la propriété request
- Flex WebService en MXML – Envoyer des paramètres directement ou avec le tag mx:request
- Flex ActionScript – Intercepter l'Erreur #2044 (IOErrorEvent) lancée par Loader [Résolu]
- Flex HTTPService – HTTPService en ActionScript, Remote Proxy
Commentaires (0)
Trackbacks (0)
(Souscrire aux commentaires de cet article)
Aucun trackbacks pour l'instant





