Package | flash.net |
Classe | public class URLLoader |
Héritage | URLLoader EventDispatcher Object |
Sous-classes | AVURLLoader |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Un objet URLLoader télécharge toutes les données d’une URL avant de les mettre à disposition du code dans les applications. Il fournit des notifications sur la progression du téléchargement, que vous pouvez connaître en surveillant les propriétés bytesLoaded
et bytesTotal
, ainsi que les événements distribués.
Dans le cas de chargements de fichiers vidéo très volumineux, tels que des FLV, des erreurs de mémoire insuffisante peuvent se produire.
Lorsque vous employez cette classe dans Flash Player et dans le contenu de l’application AIR d’un sandbox de sécurité autre que celui de l’application, tenez compte du modèle de sécurité suivant :
- Un fichier SWF du sandbox local avec système de fichiers risque de ne pas charger des données depuis une ressource située dans le sandbox réseau, ni lui en fournir.
- Par défaut, le fichier SWF appelant et l’URL chargée doivent se trouver dans le même domaine. Par exemple, un fichier SWF à l’adresse www.adobe.com peut charger uniquement des données provenant de sources situées aussi à l’adresse www.adobe.com. Pour charger des données à partir d’un autre domaine, placez un fichier de régulation d’URL sur le serveur hébergeant les données.
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player : Sécurité (disponible en anglais uniquement).
Plus d’exemples
Informations complémentaires
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
bytesLoaded : uint = 0
Indique le nombre d’octets chargés jusqu’ici au cours du chargement. | URLLoader | ||
bytesTotal : uint = 0
Indique le nombre total d’octets dans les données téléchargées. | URLLoader | ||
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
data : *
Données reçues par le biais de l’opération de chargement. | URLLoader | ||
dataFormat : String = "text"
Contrôle si les données téléchargées sont reçues sous forme de texte (URLLoaderDataFormat.TEXT), de données binaires brutes (URLLoaderDataFormat.BINARY) ou de variables de code URL (URLLoaderDataFormat.VARIABLES). | URLLoader |
Méthode | Défini par | ||
---|---|---|---|
URLLoader(request:URLRequest = null)
Crée un objet URLLoader. | URLLoader | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void [override]
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | URLLoader | ||
Ferme l’opération de chargement en cours. | URLLoader | ||
Distribue un événement dans le flux d’événements. | EventDispatcher | ||
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement. | EventDispatcher | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Envoie et charge les données à partir de l’URL spécifiée. | URLLoader | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Supprime un écouteur de l’objet EventDispatcher. | EventDispatcher | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object | ||
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié. | EventDispatcher |
Evénement | Synthèse | Défini par | ||
---|---|---|---|---|
[Evénement de diffusion] Distribué lorsque l’application Flash Player obtient le focus du système d’exploitation et devient active. | EventDispatcher | |||
Distribué après le décodage de toutes les données reçues et leur placement dans la propriété data de l’objet URLLoader. | URLLoader | |||
[Evénement de diffusion] Distribué lorsque l’application Flash Player ou AIR perd le focus du système d’exploitation et devient inactive. | EventDispatcher | |||
Distribué si un appel de la méthode load() tente d’accéder aux données via HTTP, et si Adobe AIR est capable de détecter et de renvoyer le code d’état de la requête. | URLLoader | |||
Distribué si un appel de la méthode URLLoader.load() tente d’accéder aux données via HTTP. | URLLoader | |||
Distribué si un appel de la méthode URLLoader.load() provoque une erreur fatale qui met fin au téléchargement. | URLLoader | |||
Distribué lorsque l’opération de téléchargement commence suite à un appel de la méthode URLLoader.load(). | URLLoader | |||
Distribué à la réception des données au fur et à mesure du téléchargement. | URLLoader | |||
Distribué si un appel de la méthode URLLoader.load() tente de charger des données d’un serveur en dehors d’un sandbox de sécurité. | URLLoader |
bytesLoaded | propriété |
public var bytesLoaded:uint = 0
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indique le nombre d’octets chargés jusqu’ici au cours du chargement.
bytesTotal | propriété |
public var bytesTotal:uint = 0
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indique le nombre total d’octets dans les données téléchargées. Cette propriété contient 0 lorsque le chargement est en cours et est renseignée au terme de ce dernier. Egalement, si un en-tête Content-Length est manquant, bytesTotal sera indéterminé.
data | propriété |
public var data:*
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Données reçues par le biais de l’opération de chargement. Cette propriété n’est renseignée qu’à la fin du chargement. Le format des données varie en fonction du paramétrage de la propriété dataFormat
:
Si la propriété dataFormat
est URLLoaderDataFormat.TEXT
, les données reçues représentent une chaîne qui contient le texte du fichier chargé.
Si la propriété dataFormat
est URLLoaderDataFormat.BINARY
, les données reçues représentent un objet ByteArray qui contient des données binaires brutes.
Si la propriété dataFormat
est URLLoaderDataFormat.VARIABLES
, les données reçues représentent un objet URLVariables qui contient des variables d’URL codées.
Eléments de l’API associés
Exemple ( Comment utiliser cet exemple )
//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 | propriété |
public var dataFormat:String = "text"
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Contrôle si les données téléchargées sont reçues sous forme de texte (URLLoaderDataFormat.TEXT
), de données binaires brutes (URLLoaderDataFormat.BINARY
) ou de variables d’URL codées (URLLoaderDataFormat.VARIABLES
).
Si la valeur de la propriété dataFormat
est URLLoaderDataFormat.TEXT
, les données reçues représentent une chaîne qui contient le texte du fichier chargé.
Si la valeur de la propriété dataFormat
est URLLoaderDataFormat.BINARY
, les données reçues représentent un objet ByteArray qui contient les données binaires brutes.
Si la valeur de la propriété dataFormat
est URLLoaderDataFormat.VARIABLES
, les données reçues représentent un objet URLVariables qui contient les variables d’URL codées.
La valeur par défaut est URLLoaderDataFormat.TEXT.
Eléments de l’API associés
Exemple ( Comment utiliser cet exemple )
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 | () | Constructeur |
public function URLLoader(request:URLRequest = null)
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crée un objet URLLoader.
Paramètresrequest:URLRequest (default = null ) — Objet URLRequest indiquant l’URL à télécharger. Si ce paramètre n’est pas spécifié, aucune opération de chargement ne commence. S’il est spécifié, l’opération de chargement commence immédiatement (voir l’entrée load pour plus d’informations).
|
Eléments de l’API associés
addEventListener | () | méthode |
override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. Vous pouvez enregistrer les écouteurs d’événement dans tous les nœuds de la liste d’affichage pour un type spécifique d’événement, de phase et de priorité.
Après l’enregistrement d’un écouteur d’événement, vous ne pouvez plus modifier sa priorité par d’autres appels de addEventListener()
. Pour modifier la priorité d’un écouteur, vous devez d’abord appeler removeListener()
. Vous pouvez ensuite réenregistrer l’écouteur avec le nouveau niveau de priorité.
N’oubliez pas qu’une fois l’écouteur enregistré, tous les prochains appels de addEventListener()
avec une valeur type
ou useCapture
différente entraîneront la création d’un autre enregistrement d’écouteur. Si, par exemple, vous enregistrez un écouteur dans lequel la propriété useCapture
est définie sur true
, il écoute uniquement pendant la phase de capture. Si vous appelez addEventListener()
à l’aide du même objet écouteur, mais en définissant useCapture
sur false
, vous obtenez deux écouteurs distincts : l’un qui écoute pendant la phase de capture et l’autre qui écoute pendant les phases cible et de propagation vers le haut (bubbling).
Il est impossible d’enregistrer un écouteur d’événement uniquement pour la phase cible ou la phase de propagation vers le haut. Ces deux phases sont associées pendant l’enregistrement car la propagation vers le haut s’applique uniquement aux ancêtres du nœud cible.
Si vous n’avez plus besoin d’un écouteur d’événements, supprimez-le en appelant removeEventListener()
, afin d’éviter tout problème de mémoire. Les écouteurs d’événement ne sont pas automatiquement supprimés de la mémoire, car le nettoyeur de mémoire ne supprime pas l’écouteur tant que l’objet de distribution existe (à moins que le paramètre useWeakReference
ne soit défini sur true
).
Lors de la copie d’une occurrence d’EventDispatcher, les écouteurs d’événement qui lui sont associés ne sont pas pris en compte (si le nouveau nœud nécessite un écouteur d’événement, vous devez associer celui-ci après la création du nœud). Toutefois, si vous déplacez une occurrence d’EventDispatcher, les écouteurs d’événement qui lui sont associés la suivent.
Si un écouteur d’événement est enregistré sur un nœud alors qu’un événement est en cours de traitement sur ce nœud, l’écouteur n’est pas déclenché pendant la phase actuelle, mais il peut l’être pendant une phase ultérieure du flux d’événements, telle que la phase de propagation vers le haut (bubbling).
Si un écouteur d’événement est supprimé d’un nœud sur lequel un événement est en cours de traitement, il est cependant déclenché par les actions en cours. Une fois supprimé, l’écouteur d’événement n’est plus jamais appelé (à moins d’être réenregistré à des fins de traitement ultérieur).
Paramètres
type:String — Type d’événement.
| |
listener:Function — Fonction d’auditeur qui traite l’événement. Cette fonction doit accepter un objet Event comme paramètre unique et ne rien renvoyer, comme illustré ci-dessous :
function(evt:Event):void Le nom de cette fonction n’a aucune importance. | |
useCapture:Boolean (default = false ) —
Détermine si l’écouteur est actif pendant la phase de capture ou pendant les phases cible et de propagation. Si la propriété useCapture est définie sur true , l’écouteur traite l’événement uniquement pendant la phase de capture et non pendant les phases cible et de propagation. Si la propriété useCapture est définie sur false , l’écouteur traite l’événement uniquement pendant les phases cible et de propagation. Pour écouter l’événement dans les trois phases, appelez addEventListener à deux reprises, une première fois en définissant useCapture sur true , puis une nouvelle fois en définissant useCapture sur false .
| |
priority:int (default = 0 ) — Niveau de priorité de l’écouteur d’événement. La priorité est indiquée par un entier signé de 32 bits. Plus le nombre est élevé, plus la priorité est élevée. Tous les écouteurs dont la priorité correspond à n sont traités avant les écouteurs dotés de la priorité n -1. Les écouteurs dont la priorité est identique sont traités dans l’ordre où ils ont été ajoutés. La priorité par défaut est 0.
| |
useWeakReference:Boolean (default = false ) — Détermine si la référence à l’écouteur est forte ou faible. Une référence forte (valeur par défaut) empêche le nettoyage de votre écouteur, Cela n’est pas le cas avec une référence faible. Les fonctions de membres de niveau classe n’étant pas soumises au nettoyage, vous pouvez définir |
close | () | méthode |
public function close():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ferme l’opération de chargement en cours. Toute opération de chargement en cours prend immédiatement fin. Si aucune URL n’est en cours de transmission, une erreur de flux non valide est renvoyée.
load | () | méthode |
public function load(request:URLRequest):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Envoie et charge les données à partir de l’URL spécifiée. Les données peuvent être reçues sous forme de texte, de données binaires brutes ou de variables d’URL codées, selon la valeur définie pour la propriété dataFormat
. Vous remarquerez que la valeur par défaut de la propriété dataFormat
correspond à text. Si vous souhaitez envoyer des données à l’URL spécifiée, définissez la propriété data
dans l’objet URLRequest.
Remarque : si un fichier en cours de chargement contient des caractères non-ASCII (comme dans les langues autres que l’anglais), nous vous recommandons d’enregistrer le fichier avec codage UTF-8 ou UTF-16, plutôt que sous un format non-Unicode, ASCII par exemple.
Un fichier SWF du sandbox local avec système de fichiers risque de ne pas charger des données depuis une ressource située dans le sandbox réseau, ni lui en fournir.
Par défaut, le fichier SWF appelant et l’URL chargée doivent se trouver dans le même domaine. Par exemple, un fichier SWF à l’adresse www.adobe.com peut charger uniquement des données provenant de sources situées aussi à l’adresse www.adobe.com. Pour charger des données à partir d’un autre domaine, placez un fichier de régulation d’URL sur le serveur hébergeant les données.
Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.
Dans Flash Player versions 10 et ultérieures, si vous utilisez un Content-Type en plusieurs parties (par exemple « multipart/form-data ») qui contient un chargement (indiqué par un paramètre « filename » dans un en-tête « content-disposition » au sein du corps POST), l’opération POST est soumise aux règles de sécurité appliquées aux chargements :
- L’opération POST doit être effectuée en réponse à l’action d’un utilisateur, comme un clic de souris ou la pression d’une touche.
- Si l’opération POST se fait entre plusieurs domaines (la cible POST ne se trouve pas sur le même serveur que le fichier SWF qui envoie la demande POST), le serveur cible doit fournir un fichier de régulation d’URL qui permette l’accès interdomaines.
Par ailleurs, la syntaxe de tous les Content-Type en plusieurs parties doit être correcte (selon la norme RFC2046). Si la syntaxe s’avère incorrecte, l’opération POST est soumise aux règles de sécurité appliquées aux chargements.
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player : Sécurité (disponible en anglais uniquement).
Paramètres
request:URLRequest — Objet URLRequest indiquant l’URL à télécharger.
|
Evénements
complete: — Distribué après le chargement effectif de données.
| |
httpStatus: — Si l’accès s’effectue via HTTP et que l’environnement Flash Player actuel permet l’obtention des codes d’état, il se peut que vous receviez ces événements en plus des événements complete ou error .
| |
ioError: — L’opération de chargement n’a pu se terminer.
| |
progress: — Distribué à la réception des données au fur et à mesure du téléchargement.
| |
securityError: — Une opération de chargement a tenté d’extraire des données à partir d’un serveur situé en dehors du sandbox de sécurité de l’appelant. Vous pouvez contourner le problème en utilisant un fichier de régulation au niveau du serveur.
| |
securityError: — Une opération de chargement a tenté de charger un fichier SWZ (un composant de la plateforme Adobe), mais le certificat n’est pas valide ou le digest ne correspond pas au composant.
| |
open: — Distribué au commencement d’une opération de chargement.
| |
httpResponseStatus: — Distribué si un appel de la méthode load() tente d’accéder aux données via HTTP et si Adobe AIR est capable de détecter et de renvoyer le code d’état de la requête.
|
Valeur émise
ArgumentError — Les objets URLRequest.requestHeader ne devraient pas contenir certains en-têtes de requête HTTP interdits. Pour plus d’informations, voir la description de la classe URLRequestHeader.
| |
MemoryError — Cette erreur peut se produire pour les raisons suivantes : 1) Flash Player ou Adobe AIR ne peut pas convertir le paramètre URLRequest.data du format UTF8 au format MBCS. Cette erreur est concernée si l’objet URLRequest transmis à la méthode load() est configuré pour exécuter une opération GET et si System.useCodePage est réglé sur true . 2) Flash Player ou Adobe AIR ne peut pas allouer de mémoire aux données POST . Cette erreur est concernée si l’objet URLRequest transmis à load est configuré pour exécuter une opération POST .
| |
SecurityError — Les fichiers non approuvés au niveau local ne peuvent pas communiquer avec Internet. Pour contourner ce problème, reclassifiez le fichier en tant que fichier local avec accès au réseau ou en tant que fichier approuvé.
| |
SecurityError — Si vous tentez de vous connecter à un port généralement réservé. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.
| |
TypeError — La valeur du paramètre de requête ou de la propriété URLRequest.url de l’objet URLRequest transmis est null .
|
Informations complémentaires
Eléments de l’API associés
Exemple ( Comment utiliser cet exemple )
Un objet URLRequest
est créé pour identifier l’emplacement du fichier XML, qui pour cet exemple est dans le même répertoire que le fichier SWF. Le fichier est chargé dans un bloc try...catch
pour capturer toute erreur pouvant survenir (ici nous capturons les erreurs SecurityError
). Si un événement IO_ERROR
survient, la méthode errorHandler()
est invoquée et écrit un message d’erreur dans le champ de texte xmlTextField
. Une fois le fichier XML reçu et placé dans la propriété de données de l’objet URLLoader loader
, l’événement Event.COMPLETE
est distribué et la méthode loaderCompleteHandler()
est invoquée.
Dans la méthode loaderCompleteHandler()
, un bloc try...catch
est utilisé pour capturer toute erreur d’analyse pouvant survenir lors de la conversion des données chargées depuis le fichier en objet XML. La méthode readNodes()
passe de façon récursive à travers tous les éléments des noeuds du document XML et ajoute le champ de texte xmlTextField
avec la liste des premiers attributs de tous les éléments.
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 | Evénement |
flash.events.Event
propriété Event.type =
flash.events.Event.COMPLETE
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué après le décodage de toutes les données reçues et leur placement dans la propriété data de l’objet URLLoader. Il est possible d’accéder aux données reçues une fois cet événement distribué.
La constanteEvent.COMPLETE
définit la valeur de la propriété type
d’un objet événement complete
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet réseau dont le chargement est terminé. |
Eléments de l’API associés
httpResponseStatus | Evénement |
flash.events.HTTPStatusEvent
propriété HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, AIR 1.0, Flash Lite 4 |
Distribué si un appel de la méthode load() tente d’accéder aux données via HTTP, et si Adobe AIR est capable de détecter et de renvoyer le code d’état de la requête.
Contrairement à l’événementhttpStatus
, l’événement httpResponseStatus
est renvoyé avant toute donnée de réponse. De plus, l’événement httpResponseStatus
inclut des valeurs pour les propriétés responseHeaders
et responseURL
(qui ne sont pas définies pour un événement httpStatus
. Notez que httpResponseStatus
(le cas échéant) est envoyé avant (et en complément de) tout événement complete
ou error
.
La constante HTTPStatusEvent.HTTP_RESPONSE_STATUS
définit la valeur de la propriété type
d’un objet événement httpResponseStatus
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
responseURL | L’URL de laquelle la réponse a été renvoyée. |
responseHeaders | Les en-têtes de réponse que la réponse a renvoyés, sous la forme d’un tableau d’objets URLRequestHeader. |
status | Le code d’état HTTP renvoyé par le serveur. |
redirected | Indique si la réponse est le résultat d’une redirection. |
target | L’objet réseau recevant un code d’état HTTP. |
Eléments de l’API associés
httpStatus | Evénement |
flash.events.HTTPStatusEvent
propriété HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_STATUS
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué si un appel de la méthode URLLoader.load() tente d’accéder aux données via HTTP. Dans le cas de contenu s’exécutant dans Flash Player, cet événement n’est distribué que si l’environnement Flash Player actif est capable de détecter et de renvoyer le code d’état de la requête (certains environnements de navigateur ne sont pas capables de fournir cette information). Vous remarquerez que l’événement httpStatus
(le cas échéant) est envoyé avant (et en complément de) tout événement complete
ou error
.
HTTPStatusEvent.HTTP_STATUS
définit la valeur de la propriété type
d’un objet événement httpStatus
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
status | Le code d’état HTTP renvoyé par le serveur. |
target | L’objet réseau recevant un code d’état HTTP. |
Eléments de l’API associés
ioError | Evénement |
flash.events.IOErrorEvent
propriété IOErrorEvent.type =
flash.events.IOErrorEvent.IO_ERROR
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué si un appel de la méthode URLLoader.load() provoque une erreur fatale qui met fin au téléchargement.
Définit la valeur de la propriététype
d’un objet d’événement ioError
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
errorID | Un numéro de référence associé à l’erreur spécifique (AIR uniquement). |
target | Objet réseau sur lequel l’erreur d’entrée/sortie s’est produite. |
text | Texte à afficher en tant que message d’erreur. |
Eléments de l’API associés
open | Evénement |
flash.events.Event
propriété Event.type =
flash.events.Event.OPEN
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué lorsque l’opération de téléchargement commence suite à un appel de la méthode URLLoader.load()
.
Event.OPEN
définit la valeur de la propriété type
d’un objet événement open
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet réseau qui a ouvert une connexion. |
Eléments de l’API associés
progress | Evénement |
flash.events.ProgressEvent
propriété ProgressEvent.type =
flash.events.ProgressEvent.PROGRESS
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué à la réception des données au fur et à mesure du téléchargement.
Notez qu’avec un objet URLLoader, il est impossible d’accéder aux données avant la fin de leur téléchargement. L’événement progress indique donc uniquement la progression du téléchargement. Pour accéder aux données avant la fin de leur téléchargement, utilisez un objet URLStream.
Définit la valeur de la propriététype
d’un objet événement progress
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
bytesLoaded | Nombre d’éléments ou d’octets chargés lors du traitement de l’événement par l’écouteur. |
bytesTotal | Nombre total d’éléments ou d’octets qui seront chargés si le processus de chargement aboutit. |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet indiquant la progression. |
Eléments de l’API associés
securityError | Evénement |
flash.events.SecurityErrorEvent
propriété SecurityErrorEvent.type =
flash.events.SecurityErrorEvent.SECURITY_ERROR
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué si un appel de la méthode URLLoader.load() tente de charger des données d’un serveur en dehors d’un sandbox de sécurité. Egalement distribué si un appel de la méthode URLLoader.load()
tente de charger un fichier SWZ, si le certificat n’est pas valide ou si la chaîne digest ne correspond pas au composant.
SecurityErrorEvent.SECURITY_ERROR
définit la valeur de la propriété type
d’un objet événement securityError
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet réseau signalant l’erreur de sécurité |
text | Texte à afficher en tant que message d’erreur. |
Eléments de l’API associés
Remarque : pour exécuter cet exemple, placez un fichier nommé urlLoaderExample.txt dans le même répertoire que votre fichier SWF. Ce fichier ne doit contenir que la ligne de texte suivante : answer=42&question=unknown
Le code de l’exemple effectue les opérations suivantes :
- La fonction constructeur crée une occurrence d’URLLoader nommée
loader
et une occurrence d’URLRequest nomméerequest
, qui contient l’emplacement et le nom du fichier à charger. - L’objet
loader
est transmis à la méthodeconfigureListeners()
, qui ajoute des écouteurs à chacun des événements URLLoader pris en charge. - L’objet
request
est ensuite transmis à la méthodeloader.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éthodecompleteHandler()
. La méthodecompleteHandler()
crée un objet URLVariables à partir du texte chargé depuis le fichier. L’objet URLVariables convertit les paires nom/valeur d’URL codées en propriétés ActionScript pour faciliter la manipulation des données chargées.
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, 09:30 AM Z