Packageflash.net
Classepublic class LocalConnection
HéritageLocalConnection Inheritance EventDispatcher Inheritance Object

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

La classe LocalConnection vous permet de créer un objet LocalConnection qui peut appeler une méthode dans un autre objet LocalConnection, au sein d’un même fichier SWF ou entre plusieurs fichiers SWF. Les connexions locales autorisent ce type de communication entre les fichiers SWF sans passer par fscommand() ni JavaScript. Les objets LocalConnection ne peuvent communiquer qu'avec les fichiers SWF s'exécutant sur un même ordinateur client, mais peuvent s'exécuter dans diverses applications ; un fichier SWF s'exécutant dans un navigateur et un autre dans une projection, par exemple.

Les objets LocalConnection créés dans ActionScript 3.0 peuvent communiquer avec les objets LocalConnection créés dans ActionScript 1.0 ou 2.0. L’inverse est également vrai : les objets LocalConnection créés dans ActionScript 1.0 ou 2.0 peuvent communiquer avec les objets LocalConnection créés dans ActionScript 3.0. Flash Player gère automatiquement les communications entre les objets LocalConnection de versions différentes.

Pour comprendre comment utiliser les objets LocalConnection afin de permettre les communications entre deux fichiers SWF, il est utile d’identifier les commandes utilisées dans chaque fichier. Un fichier SWF est appelé fichier SWF d’envoi. Il contient la méthode à appeler. Le fichier SWF d’envoi doit contenir un objet LocalConnection et un appel de la méthode send(). L’autre fichier SWF est dit de réception. Il s'agit de celui qui appelle la méthode. Le fichier SWF de réception doit contenir un autre objet LocalConnection et un appel de la méthode connect().

L’utilisation des méthodes send() et connect() varie selon que les fichiers SWF se trouvent dans un même domaine, dans des domaines différents avec des noms prévisibles ou dans des domaines différents avec des noms imprévisibles ou dynamiques. Les paragraphes ci-après décrivent ces trois situations et présentent des exemples de code pour chacune d’elles.

Même domaine. La manière la plus simple d'utiliser un objet LocalConnection est d'autoriser la communication uniquement entre les objets LocalConnection appartenant au même domaine, car Flash Player autorise par défaut les communications intra-domaine. Lorsque deux fichiers SWF d’un même domaine communiquent, vous n’avez pas besoin d'implémenter des mesures de sécurité particulières. Vous transmettez simplement la même valeur pour le paramètre connectionName aux deux méthodes connect() et send() :

Domaines différents avec des noms prévisibles. Lorsque deux fichiers SWF de domaines différents communiquent, vous devez autoriser les échanges entre ces derniers en appelant la méthode allowDomain(). Vous devez aussi qualifier le nom de la connexion dans la méthode send() à l’aide du nom du domaine de l’objet LocalConnection de réception :

Domaines différents avec des noms imprévisibles. Il se peut que vous souhaitiez accroître la portabilité interdomaines du fichier SWF contenant l’objet LocalConnection de réception. Pour éviter de spécifier le nom de domaine dans la méthode send() tout en indiquant à Flash Player que les objets LocalConnection d'envoi et de réception ne se trouvent pas dans le même domaine, faites précéder le nom de connexion d’un caractère de soulignement (_) dans les appels de connect() et send(). Pour autoriser les échanges entre les deux domaines, appelez la méthode allowDomain() et transmettez les domaines à partir desquels vous voulez autoriser les appels LocalConnection. Vous pouvez aussi transmettre l’argument générique '(' pour autoriser les appels en provenance de tous les domaines :

Vous pouvez utiliser les objets LocalConnection pour envoyer et recevoir des données au sein d'un même fichier SWF, mais ce n'est pas l'implémentation la plus répandue.

Pour plus d’informations sur les méthodes send() et connect(), reportez-vous à la description du paramètre connectionName dans les entrées de LocalConnection.send() et LocalConnection.connect(). Consultez également les entrées de allowDomain() et domain.

Consulter les exemples

Voir aussi

flash.net.LocalConnection.send()
flash.net.LocalConnection.allowDomain()
flash.net.LocalConnection.domain
Connexion à d'autres instances Flash Player


Propriétés publiques
 PropriétéDéfini par
  client : Object
Indique l’objet sur lequel des méthodes de rappel sont appelées.
LocalConnection
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
  domain : String
[lecture-seule] Chaîne représentant le domaine de l'emplacement du fichier SWF actuel.
LocalConnection
 Inheritedprototype : Object
[static] Référence à l’objet prototype d’un objet de classe ou fonction.
Object
Méthodes publiques
 MéthodeDéfini par
  
Crée un objet LocalConnection.
LocalConnection
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement.
EventDispatcher
  
allowDomain(... domains):void
Spécifie un ou plusieurs domaines qui peuvent envoyer des appels LocalConnection à cette occurrence de LocalConnection.
LocalConnection
  
Spécifie un ou plusieurs domaines qui peuvent envoyer des appels LocalConnection à cet objet LocalConnection.
LocalConnection
  
Ferme (déconnecte) un objet LocalConnection.
LocalConnection
  
connect(connectionName:String):void
Prépare un objet LocalConnection à recevoir des commandes à partir d'une commande send() (qui a appelé l'objet LocalConnection d'envoi).
LocalConnection
 Inherited
Distribue un événement dans le flux d’événements.
EventDispatcher
 Inherited
Vérifie si des écouteurs sont enregistrés auprès de l'objet EventDispatcher pour un type spécifique d’événement.
EventDispatcher
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
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
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l’objet EventDispatcher.
EventDispatcher
  
send(connectionName:String, methodName:String, ... arguments):void
Appelle la méthode nommée methodName sur une connexion établie à l'aide de la méthode connect(connectionName) (l'objet LocalConnection de réception).
LocalConnection
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
 Inherited
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énements
 Evénement Synthèse Défini par
 Inherited Distribué lorsque Flash Player a le focus du système d’exploitation et devient actif.EventDispatcher
   Distribué lorsqu'une erreur est renvoyée de manière asynchrone ; autrement dit, lorsqu'elle provient de code asynchrone natif.LocalConnection
 Inherited Distribué lorsque Flash Player perd le focus du système d’exploitation et devient inactif.EventDispatcher
   Distribué si un appel de LocalConnection.send() tente d'envoyer des données à un autre sandbox de sécurité.LocalConnection
   Distribué lorsqu'un objet LocalConnection publie son état.LocalConnection
Détails des propriétés
clientpropriété
client:Object  [lecture-écriture]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Indique l’objet sur lequel des méthodes de rappel sont appelées. L’objet par défaut correspond à this, la connexion locale en cours de création. Si vous réglez la propriété client sur un autre objet, les méthodes de rappel sont appelées sur celui-ci.


Implémentation
    public function get client():Object
    public function set client(value:Object):void

Lance
TypeError — La propriété client ne peut pas être réglée sur l’objet null.

Voir aussi

domainpropriété 
domain:String  [lecture-seule]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Chaîne représentant le domaine de l'emplacement du fichier SWF actuel.

Dans les fichiers SWF publiés pour Flash Player 9 ou version ultérieure, la chaîne renvoyée est le domaine exact du fichier SWF actuel, y compris les sous-domaines. Par exemple, si le fichier SWF se trouve à l'adresse www.adobe.com, cette commande renvoie "www.adobe.com".

Si le fichier SWF actuel est un fichier local résidant sur l'ordinateur client, cette commande renvoie "localhost".

Les emplois les plus courants de cette propriété consistent à inclure le nom de domaine de l'objet LocalConnection d'envoi en tant que paramètre de la méthode que vous comptez appeler dans l'objet LocalConnection de réception, ou conjointement avec LocalConnection.allowDomain() pour accepter les commandes issues d'un domaine spécifique. Si vous autorisez uniquement la communication entre les objets LocalConnection appartenant au même domaine, vous n'aurez probablement pas besoin d'utiliser cette propriété.


Implémentation
    public function get domain():String

Voir aussi

Détails du constructeur
LocalConnection()Constructeur
public function LocalConnection()

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Crée un objet LocalConnection. Les objets LocalConnection vous permettent d’activer les communications entre différents fichiers SWF s’exécutant sur un même ordinateur client.

Voir aussi

Détails des méthodes
allowDomain()méthode
public function allowDomain(... domains):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Spécifie un ou plusieurs domaines qui peuvent envoyer des appels LocalConnection à cette occurrence de LocalConnection.

Vous ne pouvez pas utiliser cette méthode pour permettre aux fichiers SWF hébergés à l'aide d'un protocole sécurisé (HTTPS) d'autoriser un accès à partir de fichiers SWF hébergés avec des protocoles non sécurisés ; vous devez pour cela utiliser la méthode allowInsecureDomain().

Vous pouvez utiliser cette méthode pour faire en sorte qu'un fichier SWF enfant issu d'un domaine différent puisse effectuer des appels LocalConnection vers le fichier SWF parent, sans connaître le domaine final dont émanera le fichier SWF enfant. Cela peut se produire, par exemple, lorsque vous utilisez des redirections d'équilibrage de charge ou des serveurs tiers. Dans ce cas, vous pouvez utiliser la propriété url de l'objet LoaderInfo utilisé avec le chargement de sorte que le domaine s'utilise avec la méthode allowDomain(). Par exemple, si vous chargez un fichier SWF enfant à l'aide d'un objet Loader, à l'issue du chargement, vous pouvez vérifier la propriété contentLoaderInfo.url de l'objet Loader et analyser le domaine à travers la chaîne URL complète. Si vous procédez ainsi, veillez à attendre la fin du chargement du fichier SWF, car la valeur de la propriété contentLoaderInfo.url ne sera correcte et définitive qu'une fois le fichier entièrement chargé.

Le cas contraire peut aussi se présenter : vous pouvez créer un fichier SWF enfant qui souhaite accepter les appels LocalConnection émanant de son parent, mais qui ignore le domaine de ce dernier. Dans ce cas, mettez en œuvre cette méthode en vérifiant si l'argument de domaine correspond au domaine de la propriété loaderInfo.url dans le fichier SWF chargé. Encore une fois, vous devez analyser le domaine à partir de l'adresse URL complète de loaderInfo.url. Dans ce cas, il n'est pas nécessaire d'attendre la fin du chargement du fichier SWF parent ; le parent sera déjà chargé lorsque celui de l'enfant commencera.

Lorsque vous employez cette méthode, tenez compte du modèle de sécurité de Flash Player. Par défaut, un objet LocalConnection est associé au sandbox du fichier SWF qui l'a créé et les appels interdomaines des objets LocalConnection sont interdits, à moins que vous n’appeliez la méthode LocalConnection.allowDomain() dans le fichier SWF de réception.

Pour plus d'informations, consultez les références suivantes :

Remarque : le format de la méthode allowDomain() n’est plus le même que dans ActionScript 1.0 et 2.0. Dans ces versions, allowDomain était une méthode de rappel que vous implémentiez. Dans ActionScript 3.0, allowDomain() est une méthode intégrée de LocalConnection que vous appelez. Le fonctionnement de la nouvelle version de allowDomain() est similaire à celui de flash.system.Security.allowDomain().

Paramètres

... domains — Une ou plusieurs chaînes qui nomment les domaines à partir desquels les appels LocalConnection seront autorisés. Ce paramètre est associé à deux cas spéciaux :
  • Vous pouvez spécifier le caractère générique « * » pour autoriser les appels en provenance de tous les domaines.
  • Vous pouvez spécifier la chaîne localhost pour autoriser les appels de ce fichier SWF à partir de fichiers SWF installés localement. Dans Flash Player 8, des restrictions de sécurité relatives aux fichiers SWF locaux ont été introduites. Par défaut, un fichier SWF autorisé à accéder à Internet n’a pas accès au système de fichiers local. Si vous spécifiez localhost, tout fichier SWF local peut accéder à ce fichier SWF.


Lance
ArgumentError — Les paramètres spécifiés doivent être des chaînes réglées sur une valeur autre que null.

Voir aussi

allowInsecureDomain()méthode 
public function allowInsecureDomain(... domains):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Spécifie un ou plusieurs domaines qui peuvent envoyer des appels LocalConnection à cet objet LocalConnection.

Le fonctionnement des méthodes allowInsecureDomain() et allowDomain() est identique, mais la méthode allowInsecureDomain() permet en plus aux fichiers SWF de source non HTTPS d’envoyer des appels LocalConnection à des fichiers SWF de source HTTPS. Cette différence n’a d’importance que si vous appelez la méthode allowInsecureDomain() à partir d’un fichier SWF chargé via HTTPS. Vous devez appeler la méthode allowInsecureDomain() même si vous franchissez une limite non HTTPS/HTTPS au sein du même domaine. Par défaut, les appels de LocalConnection entre les fichiers SWF non HTTPS et HTTPS sont systématiquement interdits, même dans un même domaine.

L’appel de allowInsecureDomain() est déconseillé car il risque de compromettre la sécurité offerte par HTTPS. Lorsque vous chargez un fichier SWF via HTTPS, vous avez la quasi-certitude qu'il ne sera pas altéré pendant sa mise en circulation dans le réseau. Si vous autorisez ensuite un fichier SWF non HTTPS à effectuer des appels de LocalConnection vers le fichier SWF HTTPS, vous acceptez des appels en provenance d’un fichier SWF qui a pu être altéré pendant son transport. Vous devez donc redoubler de vigilance car vous ne pouvez pas vous fier à l'authenticité des appels LocalConnection que reçoit votre fichier SWF HTTPS.

Par défaut, les fichiers SWF hébergés via le protocole HTTPS sont accessibles uniquement aux autres fichiers SWF hébergés également par l'intermédiaire du protocole HTTPS. Cette implémentation préserve l'intégrité fournie par le protocole HTTPS.

Il n'est pas recommandé d'utiliser cette méthode pour annuler le comportement par défaut car elle compromet la sécurité HTTPS. Cependant, vous devrez peut-être l'utiliser, par exemple, si vous devez autoriser l'accès aux fichiers HTTPS publiés pour Flash Player 9 ou version ultérieure à partir de fichiers HTTP publiés pour Flash Player 6 ou version antérieure.

Pour plus d'informations, consultez les références suivantes :

Paramètres

... domains — Une ou plusieurs chaînes qui nomment les domaines à partir desquels les appels LocalConnection seront autorisés. Ce paramètre est associé à deux cas spéciaux :
  • Vous pouvez spécifier le caractère générique « * » pour autoriser les appels en provenance de tous les domaines. « * » exclut les hôtes locaux.
  • Vous pouvez spécifier la chaîne localhost pour autoriser les appels de ce fichier SWF à partir de fichiers SWF installés localement. Dans Flash Player 8, des restrictions de sécurité relatives aux fichiers SWF locaux ont été introduites. Un fichier SWF autorisé à accéder à Internet n’a pas accès au système de fichiers local. Si vous spécifiez localhost, tout fichier SWF local peut accéder à ce fichier SWF. N’oubliez pas que vous devez également désigner le fichier SWF appelant comme fichier SWF local avec accès au réseau lors de la programmation.


Lance
ArgumentError — Les paramètres spécifiés doivent être des chaînes réglées sur une valeur autre que null.

Voir aussi

close()méthode 
public function close():void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Ferme (déconnecte) un objet LocalConnection. Appelez cette commande lorsque vous ne souhaitez plus que l'objet accepte de commandes, par exemple, lorsque vous souhaitez exécuter une commande connect() en utilisant le même paramètre connectionName dans un autre fichier SWF.


Lance
ArgumentError — L’occurrence de LocalConnection n’est pas connectée, elle ne peut donc pas être fermée.

Voir aussi

connect()méthode 
public function connect(connectionName:String):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Prépare un objet LocalConnection à recevoir des commandes à partir d'une commande send() (l'objet LocalConnection d'envoi). L'objet utilisé avec cette commande est appelé l'objet LocalConnection de réception. Les objets de réception et d'envoi doivent s'exécuter sur le même ordinateur client.

Pour éviter tout conflit, définissez les méthodes associées à l’objet LocalConnection de réception avant d’appeler cette méthode, comme illustré dans l’exemple de la classe LocalConnection.

Par défaut, Flash Player remplace connectionName par "superdomain:connectionName", superdomain représentant le superdomaine du fichier SWF qui contient la commande connect(). Par exemple, si le fichier SWF contenant l'objet LocalConnection de réception se trouve à l'adresse www.someDomain.com, connectionName devient "someDomain.com:connectionName". (Si un fichier SWF se trouve dans l'ordinateur client, la valeur affectée au superdomain est "localhost".)

De même, par défaut, Flash Player ne permet à l'objet LocalConnection de réception de n'accepter que les commandes provenant d'objets LocalConnection d'envoi dont le nom de connexion correspond également à une valeur "superdomain:connectionName". Ainsi, Flash facilite la communication entre les fichiers SWF situés dans un même domaine.

Si vous implémentez une communication uniquement entre des fichiers SWF appartenant au même domaine, spécifiez pour connectionName une chaîne qui ne commence pas par un caractère de soulignement (_) et qui ne spécifie pas un nom de domaine (par exemple, "myDomain:connectionName"). Utilisez cette même chaîne dans la méthode connect(connectionName).

Si vous implémentez des communications entre des fichiers SWF de domaines différents, la spécification pour connectionName d’une chaîne qui commence par un caractère de soulignement (_) accroît la portabilité interdomaines du fichier SWF associé à l'objet LocalConnection de réception. Les cas de figure possibles sont les suivants :

Pour plus d'informations, consultez la présentation de la classe et la section consacrée au paramètre connectionName de la méthode send(), ainsi que les entrées de allowDomain() et domain.

Remarque : les deux-points sont utilisés en tant que caractères spéciaux pour séparer le superdomaine de la chaîne connectionName. Toute chaîne associée à connectionName contenant deux-points n'est pas valide.

Lorsque vous employez cette méthode, tenez compte du modèle de sécurité de Flash Player. Par défaut, un objet LocalConnection est associé au sandbox du fichier SWF qui l'a créé et les appels interdomaines des objets LocalConnection sont interdits, à moins que vous n’appeliez la méthode LocalConnection.allowDomain() dans le fichier SWF de réception. Vous pouvez éviter qu'un fichier SWF n'utilise cette méthode en définissant le paramètre allowNetworking des balises object et embed dans la page HTML qui héberge le contenu SWF.

Pour plus d'informations, consultez les références suivantes :

Paramètres

connectionName:String — Chaîne correspondant au nom de connexion spécifié dans la commande send() qui souhaite communiquer avec l’objet LocalConnection de réception.


Lance
TypeError — La valeur transmise au paramètre connectionName ne doit pas être nulle.
 
ArgumentError — Cette erreur peut se produire pour trois raisons : 1) La valeur de chaîne transmise au paramètre connectionName était nulle. Utilisez une valeur non nulle. 2) La valeur transmise au paramètre connectionName contenait un caractère deux-points (:). Les deux-points sont des caractères spéciaux réservés à la séparation de superdomaine de la chaîne connectionName dans la méthode send(), pas dans la méthode connect(). 3) L’occurrence de LocalConnection est déjà connectée.

Voir aussi

send()méthode 
public function send(connectionName:String, methodName:String, ... arguments):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Appelle la méthode nommée methodName sur une connexion établie à l'aide de la méthode connect(connectionName) (l'objet LocalConnection de réception). L'objet utilisé avec cette commande est appelé objet LocalConnection d'envoi. Les fichiers SWF qui contiennent les objets d'envoi et de réception doivent s'exécuter sur le même ordinateur client.

La quantité de données que vous pouvez transmettre en tant que paramètres à cette commande est limitée à 40 Ko. Si send() émet une ArgumentError mais que votre syntaxe est correcte, tentez de répartir les requêtes send() dans plusieurs commandes, chacune comportant moins de 40 Ko de données.

Comme nous l'avons vu à la rubrique consacrée à la méthode connect(), Flash Player ajoute le superdomaine actuel à connectionName par défaut. Si vous implémentez la communication entre différents domaines, vous devez définir connectionName dans les objets LocalConnection d'envoi et de réception de sorte que Flash n'ajoute pas le superdomaine actuel à connectionName. Pour ce faire, procédez de l'une des deux façons suivantes :

Remarque : vous ne pouvez pas spécifier de superdomaine dans connectionName dans l'objet LocalConnection de réception : vous ne pouvez le faire que dans celui d'envoi.

Lorsque vous employez cette méthode, tenez compte du modèle de sécurité de Flash Player. Par défaut, un objet LocalConnection est associé au sandbox du fichier SWF qui l'a créé et les appels interdomaines des objets LocalConnection sont interdits, à moins que vous n’appeliez la méthode LocalConnection.allowDomain() dans le fichier SWF de réception. Vous pouvez éviter qu'un fichier SWF n'utilise cette méthode en définissant le paramètre allowNetworking des balises object et embed dans la page HTML qui héberge le contenu SWF.

Pour plus d'informations, consultez les références suivantes :

Paramètres

connectionName:String — Correspond au nom de connexion spécifié dans la commande connect() qui souhaite communiquer avec l’objet LocalConnection d’envoi.
 
methodName:String — Nom de la méthode à appeler dans l'objet LocalConnection de réception. Les noms de méthode suivants entraînent l'échec de la commande : send, connect, close, allowDomain, allowInsecureDomain, client et domain.
 
... arguments — Paramètres facultatifs supplémentaires à transmettre à la méthode spécifiée.


Evénements
securityError:SecurityErrorEvent — La méthode LocalConnection.send() a tenté de communiquer avec un fichier SWF appartenant à un sandbox de sécurité auquel le code effectuant l'appel n'a pas accès. Vous pouvez contourner ce problème dans l'implémentation de la méthode LocalConnection.allowDomain() du récepteur.
 
status:StatusEvent — Si la valeur de la propriété level est "status", l’appel a abouti. Si elle correspond à "error", l’appel a échoué. L’appel peut échouer si le fichier SWF de réception refuse la connexion.

Lance
TypeError — La valeur de connectionName ou de methodName est nulle. Transmettez des valeurs non nulles à ces paramètres.
 
ArgumentError — Cette erreur peut se produire pour l’une des raisons suivantes : 1) La valeur de connectionName ou de methodName est une chaîne vide. Transmettez des chaînes valides pour ces paramètres. 2) La méthode spécifiée dans methodName est limitée. 3) Le message sérialisé envoyé est trop volumineux (plus de 40 Ko).

Voir aussi

Détails des événements
asyncError Evénement
Type d'objet événement: flash.events.AsyncErrorEvent
AsyncErrorEvent.type property = flash.events.AsyncErrorEvent.ASYNC_ERROR

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Distribué lorsqu’une erreur est renvoyée de manière asynchrone ; autrement dit, lorsqu'elle provient du code asynchrone natif.

La constante AsyncErrorEvent.ASYNC_ERROR définit la valeur de la propriété type d'un objet événement asyncError.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet qui subit l'échec de l'opération réseau.
errorErreur qui a déclenché l’événement.
securityError Evénement  
Type d'objet événement: flash.events.SecurityErrorEvent
SecurityErrorEvent.type property = flash.events.SecurityErrorEvent.SECURITY_ERROR

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Distribué si un appel de LocalConnection.send() tente d’envoyer des données à un autre sandbox de sécurité.

La constante 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
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet réseau signalant l’erreur de sécurité
textTexte à afficher en tant que message d’erreur.

Voir aussi

status Evénement  
Type d'objet événement: flash.events.StatusEvent
StatusEvent.type property = flash.events.StatusEvent.STATUS

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Distribué lorsqu’un objet LocalConnection publie son état. Si LocalConnection.send() aboutit, la valeur de la propriété level de l’objet événement status correspond à "status". Dans le cas contraire, la propriété level correspond à "error". Si le fichier SWF de réception refuse la connexion, l’appel peut échouer sans que le fichier SWF d’envoi n'en soit averti.

Définit la valeur de la propriété type d'un objet événement status.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
codeDescription de l’état de l’objet.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
levelCatégorie du message, telle que "status", "warning" ou "error".
targetObjet publiant son état.

Voir aussi

Exemples Utilisation des exemples
LocalConnectionSenderExample.as

Cet exemple comprend deux classes ActionScript qui doivent être compilées dans deux fichiers SWF distincts :

Une occurrence de LocalConnection est créée dans le fichier SWF LocalConnectionSenderExample. Lorsque l’utilisateur appuie sur le bouton, la méthode call() est utilisée pour appeler la méthode lcHandler dans le fichier SWF contenant le nom de connexion « myConnection » et le contenu de TextField est transmis en tant que paramètre.

Une occurrence de LocalConnection est créée dans le fichier SWF LocalConnectionReceiverExample et la méthodeconnect() est appelée pour désigner ce fichier SWF comme destinataire des messages adressés à la connexion « myConnection ». En outre, cette classe comprend une méthode publique intitulée lcHandler(). Il s’agit de la méthode appelée par le fichier SWF LocalConnectionSenderExample. Lorsqu’elle est appelée, le texte reçu en tant que paramètre est ajouté à TextField sur la scène.

Remarque : pour tester l’exemple, chargez les deux fichiers SWF simultanément sur le même ordinateur.


// Code in LocalConnectionSenderExample.as
package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.net.LocalConnection;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.events.StatusEvent;
    import flash.text.TextFieldAutoSize;

    public class LocalConnectionSenderExample extends Sprite {
        private var conn:LocalConnection;
        
        // UI elements
        private var messageLabel:TextField;
        private var message:TextField;
        private var sendBtn:Sprite;
        
        public function LocalConnectionSenderExample() {
            buildUI();
            sendBtn.addEventListener(MouseEvent.CLICK, sendMessage);
            conn = new LocalConnection();
            conn.addEventListener(StatusEvent.STATUS, onStatus);
        }
        
        private function sendMessage(event:MouseEvent):void {
            conn.send("myConnection", "lcHandler", message.text);
        }
        
        private function onStatus(event:StatusEvent):void {
            switch (event.level) {
                case "status":
                    trace("LocalConnection.send() succeeded");
                    break;
                case "error":
                    trace("LocalConnection.send() failed");
                    break;
            }
        }
        
        private function buildUI():void {
            const hPadding:uint = 5;
            // messageLabel
            messageLabel = new TextField();
            messageLabel.x = 10;
            messageLabel.y = 10;
            messageLabel.text = "Text to send:";
            messageLabel.autoSize = TextFieldAutoSize.LEFT;
            addChild(messageLabel);
            
            // message
            message = new TextField();
            message.x = messageLabel.x + messageLabel.width + hPadding;
            message.y = 10;
            message.width = 120;
            message.height = 20;
            message.background = true;
            message.border = true;
            message.type = TextFieldType.INPUT;
            addChild(message);
            
            // sendBtn
            sendBtn = new Sprite();
            sendBtn.x = message.x + message.width + hPadding;
            sendBtn.y = 10;
            var sendLbl:TextField = new TextField();
            sendLbl.x = 1 + hPadding;
            sendLbl.y = 1;
            sendLbl.selectable = false;
            sendLbl.autoSize = TextFieldAutoSize.LEFT;
            sendLbl.text = "Send";
            sendBtn.addChild(sendLbl);
            sendBtn.graphics.lineStyle(1);
            sendBtn.graphics.beginFill(0xcccccc);
            sendBtn.graphics.drawRoundRect(0, 0, (sendLbl.width + 2 + hPadding + hPadding), (sendLbl.height + 2), 5, 5);
            sendBtn.graphics.endFill();
            addChild(sendBtn);
        }
    }
}
LocalConnectionReceiverExample.as

// Code in LocalConnectionReceiverExample.as
package {
    import flash.display.Sprite;
    import flash.net.LocalConnection;
    import flash.text.TextField;

    public class LocalConnectionReceiverExample extends Sprite {
        private var conn:LocalConnection;
        private var output:TextField;
        
        public function LocalConnectionReceiverExample()     {
            buildUI();
            
            conn = new LocalConnection();
            conn.client = this;
            try {
                conn.connect("myConnection");
            } catch (error:ArgumentError) {
                trace("Can't connect...the connection name is already being used by another SWF");
            }
        }
        
        public function lcHandler(msg:String):void {
            output.appendText(msg + "\n");
        }
        
        private function buildUI():void {
            output = new TextField();
            output.background = true;
            output.border = true;
            output.wordWrap = true;
            addChild(output);
        }
    }
}




 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/ActionScriptLangRefV3/flash/net/LocalConnection.html