Pacchetto | flash.net |
Classe | public class URLLoader |
Ereditarietà | URLLoader EventDispatcher Object |
Sottoclassi | AVURLLoader |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Un oggetto URLLoader scarica tutti i dati da un URL prima di renderli disponibili per il codice nelle applicazioni. Invia delle notifiche relative all'avanzamento dello scaricamento, che è possibile monitorare mediante le proprietà bytesLoaded
e bytesTotal
, oltre che mediante gli eventi inviati.
Quando vengono caricati file video molto grandi, ad esempio file FLV, è possibile che vengano visualizzati errori di esaurimento della memoria.
Quando utilizzate questa classe in Flash Player e nel contenuto dell'applicazione AIR nelle funzioni di sicurezza sandbox diverse dalla funzione di sicurezza dell'applicazione, considerate il modello di sicurezza seguente:
- Un file SWF che si trova nella sandbox locale con file system potrebbe non caricare dati da o fornire dati a una risorsa presente nella sandbox di rete.
- Per impostazione predefinita, il file SWF chiamante e l'URL da caricare devono trovarsi esattamente nello stesso dominio. Ad esempio, un file SWF sul sito www.adobe.com può caricare i dati solo dalle origini presenti in www.adobe.com. Per caricare dati da un dominio diverso, collocate un file dei criteri degli URL sul server sul quale si trovano i dati.
Per ulteriori informazioni sulla sicurezza, vedete l'argomento sulla sicurezza nel Centro per sviluppatori di Flash Player .
Altri esempi
Altre informazioni
Elementi API correlati
Proprietà | Definito da | ||
---|---|---|---|
bytesLoaded : uint = 0
Indica il numero di byte che sono stati caricati fino a quel momento durante l'operazione di caricamento. | URLLoader | ||
bytesTotal : uint = 0
Indica il numero totale di byte dei dati scaricati. | URLLoader | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
data : *
I dati ricevuti dall'operazione di caricamento. | URLLoader | ||
dataFormat : String = "text"
Controlla se i dati scaricati vengono ricevuti sotto forma di testo (URLLoaderDataFormat.TEXT), dati binari originari (URLLoaderDataFormat.BINARY) o variabili con codifica URL (URLLoaderDataFormat.VARIABLES). | URLLoader |
Metodo | Definito da | ||
---|---|---|---|
URLLoader(request:URLRequest = null)
Crea un oggetto URLLoader. | URLLoader | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void [override]
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento. | URLLoader | ||
Chiude l'operazione di caricamento in corso. | URLLoader | ||
Invia un evento nel flusso di eventi. | EventDispatcher | ||
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento. | EventDispatcher | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Invia e carica i dati da un URL specificato. | URLLoader | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Rimuove un listener dall'oggetto EventDispatcher. | EventDispatcher | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
Restituisce la rappresentazione in formato stringa dell'oggetto specificato. | Object | ||
Restituisce il valore di base dell'oggetto specificato. | Object | ||
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato. | EventDispatcher |
Evento | Riepilogo | Definito da | ||
---|---|---|---|---|
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR ottiene lo stato di attivazione del sistema operativo ed entra nello stato attivo. | EventDispatcher | |||
Inviato dopo che tutti i dati ricevuti sono stati decodificati e collocati nella proprietà data dell'oggetto URLLoader. | URLLoader | |||
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR perde l'attivazione del sistema operativo e sta entrando nello stato inattivo. | EventDispatcher | |||
Inviato se una chiamata al metodo load() tenta di accedere ai dati via HTTP e Adobe AIR è in grado di rilevare e restituire il codice di stato della richiesta. | URLLoader | |||
Inviato se una chiamata a URLLoader.load() tenta di accedere ai dati via HTTP. | URLLoader | |||
Inviato se una chiamata a URLLoader.load() produce un errore irreversibile che interrompe lo scaricamento. | URLLoader | |||
Inviato quando l'operazione di scaricamento inizia in seguito a una chiamata al metodo URLLoader.load(). | URLLoader | |||
Inviato quando vengono ricevuti i dati mentre è in corso l'operazione di scaricamento. | URLLoader | |||
Inviato se una chiamata al metodo URLLoader.load() tenta di caricare dati da un server al di fuori della funzione di sicurezza sandbox. | URLLoader |
bytesLoaded | proprietà |
public var bytesLoaded:uint = 0
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica il numero di byte che sono stati caricati fino a quel momento durante l'operazione di caricamento.
bytesTotal | proprietà |
public var bytesTotal:uint = 0
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica il numero totale di byte dei dati scaricati. Questa proprietà contiene 0 mentre l'operazione di caricamento è in corso e viene compilata al termine dell'operazione. Inoltre, un'intestazione Content-Length mancante causa l'indeterminazione di bytesTotal.
data | proprietà |
public var data:*
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
I dati ricevuti dall'operazione di caricamento. Questa proprietà viene compilata solo quando l'operazione di caricamento è stata completata. Il formato dei dati dipende dall'impostazione della proprietà dataFormat
:
Se la proprietà dataFormat
è URLLoaderDataFormat.TEXT
, i dati ricevuti sono costituiti da una stringa che contiene il testo del file caricato.
Se la proprietà dataFormat
è URLLoaderDataFormat.BINARY
, i dati ricevuti sono costituiti da un oggetto ByteArray che contiene i dati binari originari.
Se la proprietà dataFormat
è URLLoaderDataFormat.VARIABLES
, i dati ricevuti sono costituiti da un oggetto URLVariables che contiene le variabili con codifica URL.
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
//params.txt is a local file that includes: firstName=Tom&lastName=Jones var lbl:TextField = new TextField(); var urlRequest:URLRequest = new URLRequest("params.txt"); var urlLoader:URLLoader = new URLLoader(); urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete); urlLoader.load(urlRequest); function urlLoader_complete(evt:Event):void { lbl.text = urlLoader.data.lastName + "," + urlLoader.data.firstName; addChild(lbl); }
dataFormat | proprietà |
public var dataFormat:String = "text"
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Controlla se i dati scaricati vengono ricevuti sotto forma di testo (URLLoaderDataFormat.TEXT
), dati binari originari (URLLoaderDataFormat.BINARY
) o variabili con codifica URL (URLLoaderDataFormat.VARIABLES
).
Se il valore della proprietà dataFormat
è URLLoaderDataFormat.TEXT
, i dati ricevuti sono costituiti da una stringa che contiene il testo del file caricato.
Se il valore della proprietà dataFormat
è URLLoaderDataFormat.BINARY
, i dati ricevuti sono costituiti da un oggetto ByteArray che contiene i dati binari originari.
Se il valore della proprietà dataFormat
è URLLoaderDataFormat.VARIABLES
, i dati ricevuti sono costituiti da un oggetto URLVariables che contiene le variabili con codifica URL.
Il valore predefinito è URLLoaderDataFormat.TEXT.
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
var PATH:String = "lorem.txt"; var urlRequest:URLRequest = new URLRequest(PATH); var urlLoader:URLLoader = new URLLoader(); urlLoader.dataFormat = URLLoaderDataFormat.TEXT; // default urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete); urlLoader.load(urlRequest); function urlLoader_complete(evt:Event):void { textArea.text = urlLoader.data; }
URLLoader | () | Funzione di costruzione |
public function URLLoader(request:URLRequest = null)
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crea un oggetto URLLoader.
Parametrirequest:URLRequest (default = null ) — Un oggetto URLRequest che specifica l'URL da scaricare. Se questo parametro viene omesso, non inizia alcuna operazione di caricamento. Se specificato, l'operazione di caricamento inizia immediatamente (per ulteriori informazioni, vedete la voce load ).
|
Elementi API correlati
addEventListener | () | metodo |
override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento. Potete registrare listener di eventi in tutti i nodi dell'elenco di visualizzazione per un tipo di evento, una fase e una priorità specifiche.
Una volta registrato un listener di eventi, non potete modificarne la priorità mediante chiamate aggiuntive a addEventListener()
. Per modificare la priorità di un listener dovete chiamare innanzitutto removeListener()
. In seguito potete registrare nuovamente il listener con il nuovo livello di priorità.
Tenete presente che, dopo la registrazione del listener, le successive chiamate a addEventListener()
con un valore type
o useCapture
diverso determinano la creazione di un'altra registrazione per il listener. Ad esempio, se registrate un listener inizialmente con useCapture
impostato su true
, l'intercettazione avviene solo durante la fase di cattura. Se chiamate di nuovo addEventListener()
utilizzando lo stesso oggetto listener ma impostando useCapture
su false
, ottenete due listener separati: uno rileva gli eventi durante la fase di cattura e l'altro durante la fasi target e di bubbling.
Non potete registrare un listener di eventi solo per la fase target o per la fase di bubbling. Queste fasi vengono accoppiate durante la registrazione perché la propagazione è valida solo per gli antenati del nodo target.
Se il listener di eventi non è più necessario, rimovetelo con una chiamata a removeEventListener()
per evitare problemi di memoria. I listener di eventi non vengono eliminati automaticamente dalla memoria perché il garbage collector non rimuove il listener fintantoché esiste l'oggetto che effettua l'invio (a meno che il parametro useWeakReference
non sia impostato su true
).
Se copiate un'istanza EventDispatcher, i listener di eventi associati all'istanza non vengono copiati (se un nodo appena creato necessita di un listener di eventi, dovete associarlo dopo avere creato il nodo). Se invece spostate un'istanza EventDispatcher, insieme a questa vengono spostati anche i listener di eventi associati.
Se il listener di eventi viene registrato su un nodo mentre questo sta elaborando un evento, il listener di eventi non viene attivato durante la fase corrente ma può esserlo durante una fase successiva del flusso di eventi, ad esempio la fase di bubbling.
Se un listener di eventi viene rimosso da un nodo mentre questo sta elaborando un evento, il listener continua a essere attivato dalle azioni in corso. Dopo che è stato rimosso, il listener di eventi non viene più richiamato (a meno che non venga registrato nuovamente per elaborazioni future).
Parametri
type:String — Il tipo di evento.
| |
listener:Function — La funzione listener che elabora l'evento. Questa funzione deve accettare un oggetto Event come unico parametro e non restituire alcun valore, come mostra l'esempio che segue:
function(evt:Event):void La funzione può avere qualunque nome. | |
useCapture:Boolean (default = false ) —
Determina se il listener funziona nella fase di cattura o nelle fasi target e di bubbling. Se useCapture è impostato su true , il listener elabora l'evento solo durante la fase di cattura e non nella fase target o di bubbling. Se useCapture è impostato su false , il listener elabora l'evento solo durante la fase target o di bubbling. Per consentire l'intercettazione dell'evento in tutte e tre le fasi, chiamate due volte addEventListener , una volta con useCapture impostato su true e un'altra volta con useCapture impostato su false .
| |
priority:int (default = 0 ) — Il livello di priorità del listener di eventi. La priorità è indicata da un numero intero a 32 bit con segno. Più alto è il numero, più alta è la priorità. Tutti i listener con priorità n vengono elaborati prima dei listener con priorità n-1. Se due o più listener hanno la stessa priorità, l'elaborazione avviene secondo l'ordine in cui sono stati aggiunti. La priorità predefinita è 0.
| |
useWeakReference:Boolean (default = false ) — Determina se il riferimento al listener è forte o debole. Un riferimento forte (predefinito) evita che il listener venga sottoposto al processo di garbage collection, un riferimento debole no. Le funzioni dei membri a livello di classe non sono soggette a garbage collection, pertanto è possibile impostare |
close | () | metodo |
public function close():void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Chiude l'operazione di caricamento in corso. Tutte le operazioni di caricamento in corso vengono immediatamente terminate. Se al momento non è in corso lo streaming di un URL, viene generato un errore di streaming non valido.
load | () | metodo |
public function load(request:URLRequest):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Invia e carica i dati da un URL specificato. I dati possono essere ricevuti sotto forma di testo, dati binari originari o variabili con codifica URL, a seconda del valore che è stato impostato per la proprietà dataFormat
. Il valore predefinito per la proprietà dataFormat
è text. Per inviare dati all'URL specificato, è possibile impostare la proprietà data
nell'oggetto URLRequest.
Nota: se un file caricato contiene caratteri non ASCII come in molte lingue diverse dall'inglese, si consiglia di salvare il file con una codifica UTF-8 o UTF-16, in contrapposizione a un formato non codificato con Unicode come ASCII.
Un file SWF che si trova nella sandbox locale con file system potrebbe non caricare dati da o fornire dati a una risorsa presente nella sandbox di rete.
Per impostazione predefinita, il file SWF chiamante e l'URL da caricare devono trovarsi esattamente nello stesso dominio. Ad esempio, un file SWF sul sito www.adobe.com può caricare i dati solo dalle origini presenti in www.adobe.com. Per caricare dati da un dominio diverso, collocate un file dei criteri degli URL sul server sul quale si trovano i dati.
Non potete collegarvi alle porte comunemente riservate. Per un elenco completo di porte bloccate, vedete "Limitazioni delle API di connettività di rete" nella Guida per gli sviluppatori di ActionScript 3.0.
In Flash Player 10 e versioni successive, se utilizzate un Content-Type multipart (ad esempio "multipart/form-data") che contiene un caricamento (indicato da un parametro "filename" in un'intestazione "content-disposition" nel corpo POST), l'operazione POST è soggetta alle regole di sicurezza applicate ai caricamenti:
- L'operazione POST deve essere eseguita come risposta a un'azione compiuta dall'utente, come un clic del mouse o la pressione di un tasto.
- Se l'operazione POST è tra più domini (il target POST non si trova sullo stesso server del file SWF che invia la richiesta POST), il server di destinazione deve fornire un file di criteri URL che consenta l'accesso tra più domini.
Inoltre, per qualsiasi Content-Type multipart, la sintassi deve essere valida (in conformità agli standard RFC2046). Se la sintassi non è valida, l'operazione POST è soggetta alle regole di sicurezza applicate ai caricamenti.
Per ulteriori informazioni sulla sicurezza, vedete l'argomento sulla sicurezza nel Centro per sviluppatori di Flash Player .
Parametri
request:URLRequest — Un oggetto URLRequest che specifica l'URL da scaricare.
|
Eventi
complete: — Inviato dopo che i dati sono stati caricati correttamente.
| |
httpStatus: — Se l'accesso avviene via HTTP e l'ambiente Flash Player corrente supporta l'ottenimento di codici di stato, è possibile ricevere questi eventi in aggiunta agli eventi complete o error .
| |
ioError: — Impossibile completare l'operazione di caricamento.
| |
progress: — Inviato quando vengono ricevuti i dati mentre è in corso l'operazione di scaricamento.
| |
securityError: — Un'operazione di caricamento ha tentato di recuperare dati da un server che si trova al di fuori della funzione di sicurezza sandbox del chiamante. Questo inconveniente può essere risolto utilizzando un file dei criteri sul server.
| |
securityError: — Un'operazione di caricamento ha tentato di caricare un file SWZ (un componente della piattaforma Adobe), ma il certificato non è valido o l'oggetto digest non corrisponde al componente.
| |
open: — Inviato quando inizia un'operazione di caricamento.
| |
httpResponseStatus: — Inviato se una chiamata al metodo load() tenta di accedere ai dati via HTTP e Adobe AIR è in grado di rilevare e restituire il codice di stato della richiesta.
|
Genera
ArgumentError — Gli oggetti URLRequest.requestHeader potrebbero non contenere determinate intestazioni di richiesta HTTP proibite. Per ulteriori informazioni, vedete la descrizione della classe URLRequestHeader.
| |
MemoryError — Questo errore può verificarsi per i seguenti motivi: 1) Flash Player o AIR non è in grado di convertire il parametro URLRequest.data da UTF8 a MBCS. Questo errore è applicabile se l'oggetto URLRequest passato a load() è impostato per eseguire un'operazione GET e se System.useCodePage è impostato su true . 2) Flash Player o AIR non è in grado di allocare memoria per i dati POST . Questo errore è applicabile se l'oggetto URLRequest passato a load è impostato per eseguire un'operazione POST .
| |
SecurityError — I file non attendibili locali potrebbero non essere in grado di comunicare con Internet. Questo inconveniente può essere risolto riclassificando il file come file locale con utilizzo in rete o come attendibile.
| |
SecurityError — State tentando di collegarvi a una porta comunemente riservata. Per un elenco completo di porte bloccate, vedete "Limitazioni delle API di connettività di rete" nella Guida per gli sviluppatori di ActionScript 3.0.
| |
TypeError — Il valore del parametro request o della proprietà URLRequest.url dell'oggetto URLRequest passato è null .
|
Altre informazioni
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
Per identificare la posizione del file XML che, in questo esempio, si trova nella stessa directory del file SWF, viene creato un oggetto URLRequest
. Il file viene caricato in un blocco try...catch
per individuare eventuali errori che potrebbero verificarsi (in questo caso vengono trovati degli errori di tipo SecurityError
). Se si verifica un evento IO_ERROR
, viene chiamato il metodo errorHandler()
il quale scrive un messaggio di errore nel campo di testo xmlTextField
. Quando i dati del file XML vengono ricevuti e situati nella proprietà dei dati dell'oggetto loader
URLLoader, viene inviato l'evento Event.COMPLETE
e viene richiamato il metodo loaderCompleteHandler()
.
Nel metodo loaderCompleteHandler()
viene utilizzato un blocco try...catch
in modo da rilevare qualsiasi errore di analisi verificatosi nel corso della conversione dei dati caricati dal file in un oggetto XML. Il metodo readNodes()
quindi analizza in modo ricorsivo tutti gli elementi presenti nei nodi del documento XML e allega il campo di testo xmlTextField
contenente l'elenco dei primi attributi di tutti gli elementi.
package { import flash.display.Sprite; import flash.events.Event; import flash.net.URLLoader; import flash.net.URLRequest; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.xml.*; import flash.events.IOErrorEvent; public class URLLoader_loadExample extends Sprite { private var xmlTextField:TextField = new TextField(); private var externalXML:XML; private var loader:URLLoader; public function URLLoader_loadExample() { var request:URLRequest = new URLRequest("xmlFile.xml"); loader = new URLLoader(); try { loader.load(request); } catch (error:SecurityError) { trace("A SecurityError has occurred."); } loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.addEventListener(Event.COMPLETE, loaderCompleteHandler); xmlTextField.x = 10; xmlTextField.y = 10; xmlTextField.background = true; xmlTextField.autoSize = TextFieldAutoSize.LEFT; addChild(xmlTextField); } private function loaderCompleteHandler(event:Event):void { try { externalXML = new XML(loader.data); readNodes(externalXML); } catch (e:TypeError) { trace("Could not parse the XML file."); } } private function readNodes(node:XML):void { for each (var element:XML in node.elements()) { xmlTextField.appendText(element.attributes()[0] + "\n"); readNodes(element); } } private function errorHandler(e:IOErrorEvent):void { xmlTextField.text = "Had problem loading the XML File."; } } }
complete | Evento |
flash.events.Event
proprietà Event.type =
flash.events.Event.COMPLETE
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato dopo che tutti i dati ricevuti sono stati decodificati e collocati nella proprietà data dell'oggetto URLLoader. È possibile accedere ai dati ricevuti solo quando questo evento è stato inviato.
La costanteEvent.COMPLETE
definisce il valore della proprietà type
di un oggetto evento complete
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto di rete che ha completato il caricamento. |
Elementi API correlati
httpResponseStatus | Evento |
flash.events.HTTPStatusEvent
proprietà HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, AIR 1.0, Flash Lite 4 |
Inviato se una chiamata al metodo load() tenta di accedere ai dati via HTTP e Adobe AIR è in grado di rilevare e restituire il codice di stato della richiesta.
A differenza dell'eventohttpStatus
, l'evento httpResponseStatus
viene inviato prima dei dati di risposta. Inoltre, l'evento httpResponseStatus
include valori per le proprietà responseHeaders
e responseURL
(che non sono definite per un evento httpStatus
). L'evento httpResponseStatus
(se presente) viene inviato prima di (e in aggiunta a) qualsiasi evento complete
o error
.
La costante HTTPStatusEvent.HTTP_RESPONSE_STATUS
definisce il valore della proprietà type
di un oggetto evento httpResponseStatus
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
responseURL | L'URL da cui è stata restituita la risposta. |
responseHeaders | Le intestazioni di risposta che la risposta ha restituito, come un array di oggetti URLRequestHeader. |
status | Il codice di stato HTTP restituito dal server. |
redirected | Se la risposta è il risultato di un reindirizzamento. |
target | L'oggetto di rete che riceve un codice di stato HTTP. |
Elementi API correlati
httpStatus | Evento |
flash.events.HTTPStatusEvent
proprietà HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_STATUS
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato se una chiamata a URLLoader.load() tenta di accedere ai dati via HTTP. Per il contenuto in esecuzione in Flash Player, questo evento viene inviato solo se l'ambiente Flash Player corrente è in grado di rilevare e restituire il codice di stato per la richiesta. (Alcuni ambienti browser potrebbero non essere in grado di fornire queste informazioni). L'evento httpStatus
(se presente) viene inviato prima di (e in aggiunta a) qualsiasi evento complete
o error
.
HTTPStatusEvent.HTTP_STATUS
definisce il valore della proprietà type
di un oggetto evento httpStatus
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
status | Il codice di stato HTTP restituito dal server. |
target | L'oggetto di rete che riceve un codice di stato HTTP. |
Elementi API correlati
ioError | Evento |
flash.events.IOErrorEvent
proprietà IOErrorEvent.type =
flash.events.IOErrorEvent.IO_ERROR
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato se una chiamata a URLLoader.load() produce un errore irreversibile che interrompe lo scaricamento.
Definisce il valore della proprietàtype
di un oggetto evento ioError
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
errorID | Un numero di riferimento associato all'errore specifico (solo AIR). |
target | L'oggetto di rete interessato dall'errore di input/output. |
text | Testo da visualizzare come messaggio di errore. |
Elementi API correlati
open | Evento |
flash.events.Event
proprietà Event.type =
flash.events.Event.OPEN
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato quando l'operazione di scaricamento inizia in seguito a una chiamata al metodo URLLoader.load()
.
Event.OPEN
definisce il valore della proprietà type
di un oggetto evento open
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto di rete che ha aperto una connessione. |
Elementi API correlati
progress | Evento |
flash.events.ProgressEvent
proprietà ProgressEvent.type =
flash.events.ProgressEvent.PROGRESS
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato quando vengono ricevuti i dati mentre è in corso l'operazione di scaricamento.
Con un oggetto URLLoader non è possibile accedere ai dati fino a quando i dati non sono stati completamente ricevuti. Pertanto, l'evento di avanzamento funge solo da notifica dell'avanzamento dello scaricamento. Per accedere ai dati prima di averli completamente scaricati, utilizzate un oggetto URLStream.
Definisce il valore della proprietàtype
di un oggetto evento progress
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
bytesLoaded | Il numero di elementi o di byte caricati nel momento in cui il listener elabora l'evento. |
bytesTotal | Il numero totale di elementi o byte che vengono caricati se il processo di caricamento viene completato correttamente. |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto che riporta l'avanzamento. |
Elementi API correlati
securityError | Evento |
flash.events.SecurityErrorEvent
proprietà SecurityErrorEvent.type =
flash.events.SecurityErrorEvent.SECURITY_ERROR
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato se una chiamata al metodo URLLoader.load() tenta di caricare dati da un server al di fuori della funzione di sicurezza sandbox. Inviato anche se una chiamata a URLLoader.load()
tenta di caricare un file SWZ e il certificato non è valido o la stringa digest non corrisponde al componente.
SecurityErrorEvent.SECURITY_ERROR
definisce il valore della proprietà type
di un oggetto evento securityError
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto di rete che riporta l'errore di sicurezza. |
text | Testo da visualizzare come messaggio di errore. |
Elementi API correlati
Nota: per provare l'esempio, collocate un file denominato urlLoaderExample.txt nella stessa directory del file SWF. Il file deve contenere solo la riga di testo seguente: answer=42&question=unknown
Il codice di esempio esegue le seguenti operazioni:
- La funzione di costruzione crea un'istanza URLLoader di nome
loader
e un'istanza URLRequest di nomerequest
, che contiene la posizione e il nome del file da caricare. - L'oggetto
loader
viene passato al metodoconfigureListeners()
che aggiunge i listener per ognuno degli eventi URLLoader supportati. - Quindi, l'oggetto
request
viene passato aloader.load()
, che carica il file di testo. - Quando URLLoader ha terminato il caricamento del file di testo, si attiva l'evento
Event.COMPLETE
, che a sua volta attiva il metodocompleteHandler()
. Il metodocompleteHandler()
crea un oggetto URLVariables dal testo caricato dal file. L'oggetto URLVariables converte le coppie nome/valore con codifica URL in proprietà ActionScript per facilitare la gestione dei dati caricati.
package { import flash.display.Sprite; import flash.events.*; import flash.net.*; public class URLLoaderExample extends Sprite { private loader:URLoader; public function URLLoaderExample() { loader = new URLLoader(); configureListeners(loader); var request:URLRequest = new URLRequest("urlLoaderExample.txt"); try { loader.load(request); } catch (error:Error) { trace("Unable to load requested document."); } } 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); var vars:URLVariables = new URLVariables(loader.data); trace("The answer is " + vars.answer); } 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); } } }
Tue Jun 12 2018, 02:44 PM Z