In het volgende voorbeeld worden de gegevens uit een lokaal tekstbestand geladen en weergegeven. Tevens wordt informatie over gebeurtenisafhandeling getraceerd.
Opmerking: wanneer u dit voorbeeld wilt uitvoeren, plaatst u een bestand met de naam example.txt in dezelfde map als het SWF-bestand. Dit bestand moet een eenvoudig tekstbestand met enkele woorden of regels tekst zijn.
De voorbeeldcode doet het volgende:
- De constructorfunctie maakt een instantie URLLoader genaamd
loader
. - Het object
loader
wordt aan de methode configureListeners()
doorgegeven, die listeners toevoegt voor elk van de ondersteunde gebeurtenissen URLLoader. - Er wordt een instantie URLRequest genaamd
request
gemaakt die de naam opgeeft van het bestand dat moet worden geladen. - De eigenschap
method
van de aanvraag wordt op URLRequestMethod.POST
ingesteld. - Het object
request
wordt vervolgens aan loader.load()
doorgegeven, waarna het tekstbestand wordt geladen. - Nadat URLLoader het tekstbestand heeft geladen, wordt de gebeurtenis
Event.COMPLETE
geactiveerd die de methode completeHandler()
activeert. De methode completeHandler()
traceert eenvoudig de eigenschap data
, de inhoud van het tekstbestand.
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);
}
}
}