L’exemple suivant charge et affiche les données détectées dans un fichier texte local. Il assure également le suivi des informations de gestion des événements.
Remarque : pour exécuter cet exemple, placez un fichier nommé example.txt dans le même répertoire que votre fichier SWF. Il doit s’agir d’un fichier de texte contenant simplement quelques mots ou lignes de texte.
Le code de l’exemple effectue les opérations suivantes :
- La fonction constructeur crée une occurrence de URLLoader nommée
loader
. - L’objet
loader
est transmis à la méthode configureListeners()
, qui ajoute des écouteurs à chacun des événements URLLoader pris en charge. - Une occurrence de URLRequest appelée
request
est créée. Elle représente le nom du fichier à charger. - La propriété
method
de la requête est définie sur URLRequestMethod.POST
. - L’objet
request
est ensuite transmis à la méthode loader.load()
, qui charge le fichier texte. - Lorsque l’URLLoader a terminé de chargé le fichier texte, l’événement
Event.COMPLETE
se produit et déclenche la méthode completeHandler()
. La méthode completeHandler()
recherche simplement la propriété data
, qui représente le contenu du fichier.
package {
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
public class URLRequestMethodExample extends Sprite {
private var loader:URLLoader;
public function URLRequestMethodExample() {
loader = new URLLoader();
configureListeners(loader);
var request:URLRequest = new URLRequest("example.txt");
request.method = URLRequestMethod.POST;
loader.load(request);
}
private function configureListeners(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.COMPLETE, completeHandler);
dispatcher.addEventListener(Event.OPEN, openHandler);
dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
private function completeHandler(event:Event):void {
var loader:URLLoader = URLLoader(event.target);
trace("completeHandler: " + loader.data);
}
private function openHandler(event:Event):void {
trace("openHandler: " + event);
}
private function progressHandler(event:ProgressEvent):void {
trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
}
private function securityErrorHandler(event:SecurityErrorEvent):void {
trace("securityErrorHandler: " + event);
}
private function httpStatusHandler(event:HTTPStatusEvent):void {
trace("httpStatusHandler: " + event);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
}
}