Apache Adobe Flex TutorialTutoriaux Adobe Flex & AIR en Français

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.

25juin/081

Flex URLLoader – Envoyer des requêtes et traiter le résultat (exemple)

HTTPService permet d'utiliser des requêtes et de traiter la réponse depuis et vers des services HTTP. Vous pouvez aussi utiliser la classe Flash Player appelée flash.net.URLLoader pour accomplir les même tâches entièrement en ActionScript, mais à un niveau plus bas.

La première étape quand on travaille avec un object URLLoader est toujours de construire l'objet en utilisant le constructeur comme ceci:

var loader:URRLLoader = new URLLoader();

Envoyer des requêtes avec URLLoader

Vous pouvez envoyer des requêtes en utilisant la méthode load() de l'object URLLoader. La méthode load() requiert que vous lui passiez un objet flash.net.URLRequest en paramètre spécifiant au minimum une URL à utiliser au moment de la requête. Le code suivant fait une requête à un fichier texte appelé "data.txt":

loader.load(new URLRequest("data.txt"));

25juin/0818

Flex HTTPService – HTTPService en ActionScript, Remote Proxy

Bien que la façon la plus simple et la plus rapide d'utiliser l'objet HTTPService est de le créer en MXML, cette technique est préférable pour les applications non-entreprise dans lesquels les scénarios de communication sont assez simples. Cependant, pour des applications ayant des exigences plus importantes, il est préférable d'utiliser les remote proxies. Puisque les composants HTTPService proposent de grands avantage d'un point de vue conversion de données (comme la sérialisation de data), c'est une bonne idée d'utiliser un objet HTTPService à l'intérieur d'un remote proxy. Cependant, il est généralement nécessaire de travailler ensuite avec le composant HTTPService entièrement en ActionScript, y compris la construction de l'objet et la récupération des réponses.

Si vous travaillez avec des objets HTTPService entièrement en ActionScript, vous devrez importer la classe mx.rpc.http.HTTPService. Vous pouvez ensuite en construire une nouvelle instance en utilisant l'instruction "new":

var httpService:HTTPService = new HTTPService();
25juin/0810

Flex HTTPService – Envoyer des paramètres avec la propriété request

Quand vous voulez passer des paramètres au service, vous pouvez utiliser la propriété "request" de l'instance d'HTTPService. La propriété "request" requiert une valeur de type Object. Par défaut, les couples nom/valeur de l'objet sont convertis sous format d'encodage URL et sont envoyés au service en utilisant HTTP GET. Vous pouvez assigner un objet en utilisant ActionScript comme ceci:

var parameters:Object = new Object();
parameters.a = "un";
parameters.b = "deux";
service.request = parameters;
24juin/0812

Flex HTTPService – Envoyer des requêtes et traiter le résultat (exemple)

HTTPService est un composant qui vous permet de faire des requêtes vers de simples services HTTP, tels que des fichiers texte, des fichiers XML ou des scripts/pages qui retournent de la donnée en dynamique. Vous devez toujours définir une valeur pour la propriété "url" d'un objet HTTPService. La propriété "url" dit à l'objet où il peut trouver la ressource vers laquelle il va faire la requête. La valeur peut aussi bien être une URL relative qu'une URL absolue. Le code suivant utilise du MXML pour créer un objet HTTPService qui charge du texte depuis un fichier .txt appelé data.txt, sauvegardé dans le même dossier que le fichier SWF compilé:

<mx:HTTPService id="textService" url="data.txt"/>

Maintenant que vous savez comment créer une nouvelle instance de HTTPService, nous allons voir comment envoyer des requêtes et en récupérer la réponse.