Packageflash.net
Classepublic class Socket
HéritageSocket Inheritance EventDispatcher Inheritance Object
Implémente IDataInput, IDataOutput

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

La classe Socket permet au code d’établir des connexions socket, ainsi que de lire et d'écrire des données binaires brutes. Elle est similaire à XMLSocket, mais n’impose pas le format des données reçues ou transmises.

La classe Socket est utile si vous utilisez des serveurs faisant appel à des protocoles binaires.

Pour utiliser les méthodes de la classe Socket, utilisez tout d'abord le constructeur, new Socket, pour créer un objet Socket.

Les fichiers SWF du sandbox local avec système de fichiers peuvent ne pas utiliser de sockets.

Les fichiers de régulation de socket situés sur l'hôte cible spécifient les hôtes à partir desquels les fichiers SWF peuvent établir des connexions de socket et les ports sur lesquels ces connexions peuvent être établies. Les exigences de sécurité relatives aux fichiers de régulation de socket sont devenues plus rigoureuses avec les dernières versions de Flash Player. Dans toutes les versions de Flash Player, Adobe recommande d'utiliser un fichier de régulation de socket ; dans certains cas, un tel fichier est même obligatoire. Ainsi, si vous utilisez des objets XMLSocket, assurez-vous que l'hôte cible fournisse au besoin un fichier de régulation de socket.

Voici une liste résumant les exigences relatives aux fichiers de régulation de socket dans les différentes versions de Flash Player :

Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité application (contenu installé avec l'application AIR) n'est pas soumis à ces restrictions de sécurité.

Pour plus d'informations sur la sécurité, consultez les références suivantes :

Consulter les exemples

Voir aussi

Connexions socket
Connexion aux sockets


Propriétés publiques
 PropriétéDéfini par
  bytesAvailable : uint
[lecture seule] Nombre d'octets de données disponibles en lecture dans la mémoire tampon d'entrée.
Socket
  connected : Boolean
[lecture seule] Indique si l'objet Socket est actuellement connecté.
Socket
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
  endian : String
Indique l'ordre des octets des données ; les valeurs possibles sont des constantes de la classe flash.utils.Endian, Endian.BIG_ENDIAN ou Endian.LITTLE_ENDIAN.
Socket
  objectEncoding : uint
Contrôle la version du format AMF utilisée lors de l'écriture ou de la lecture d'un objet.
Socket
 Inheritedprototype : Object
[statique] Référence à l'objet prototype d'un objet de classe ou fonction.
Object
  timeout : uint
Indique le délai d'attente d'une connexion, en millisecondes.
Socket
Méthodes publiques
 MéthodeDéfini par
  
Socket(host:String = null, port:int = 0)
Crée un nouvel objet Socket.
Socket
 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
  
Ferme le socket.
Socket
  
connect(host:String, port:int):void
Connecte le socket à l’hôte et au port spécifiés.
Socket
 Inherited
Distribue un événement dans le flux d'événements.
EventDispatcher
  
Efface les données accumulées dans la mémoire tampon de sortie du socket.
Socket
 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
  
Lit une valeur booléenne dans le socket.
Socket
  
Lit un octet signé dans le socket.
Socket
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Lit dans le socket le nombre d'octets de données spécifié par le paramètre length.
Socket
  
Lit dans le socket un nombre à virgule flottante à deux décimales et conforme à IEEE 754.
Socket
  
Lit dans le socket un nombre à virgule flottante à une décimale et conforme à IEEE 754.
Socket
  
Lit un entier de 32 bits signé dans le socket.
Socket
  
readMultiByte(length:uint, charSet:String):String
Lit une chaîne multi-octets dans le flux d'octets, en utilisant le jeu de caractères spécifié.
Socket
  
Lit dans le socket un objet codé au format AMF (Action Message Format) sérialisé.
Socket
  
Lit un entier de 16 bits signé dans le socket.
Socket
  
Lit un octet non signé dans le socket.
Socket
  
Lit un entier de 32 bits non signé dans le socket.
Socket
  
Lit un entier de 16 bits non signé dans le socket.
Socket
  
Lit une chaîne UTF-8 dans le socket.
Socket
  
Lit dans le socket le nombre d'octets de données UTF-8 spécifié par le paramètre length et renvoie une chaîne.
Socket
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l'objet EventDispatcher.
EventDispatcher
 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
  
Ecrit une valeur booléenne dans le socket.
Socket
  
Ecrit un octet dans le socket.
Socket
  
writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Ecrit une séquence d'octets extraits du tableau d'octets spécifié.
Socket
  
Ecrit dans le socket un nombre à virgule flottante à deux décimales et conforme à IEEE 754.
Socket
  
Ecrit dans le socket un nombre à virgule flottante à une décimale conforme à IEEE 754.
Socket
  
Ecrit un entier signé de 32 bits dans le socket.
Socket
  
Ecrit une chaîne multi-octets extraite du flux d'octets, en utilisant le jeu de caractères spécifié.
Socket
  
Ecrit un objet dans le socket au format AMF sérialisé.
Socket
  
Ecrit un entier 16 bits dans le socket.
Socket
  
Ecrit un entier non signé de 32 bits dans le socket.
Socket
  
Ecrit les données suivantes dans le socket : un entier non signé de 16 bits, qui indique, en octets, la longueur de la chaîne UTF-8 spécifiée, suivie de la chaîne elle-même.
Socket
  
Ecrit une chaîne UTF-8 dans le socket.
Socket
Evénements
 Evénement Synthèse Défini par
 Inherited[Evénement de diffusion] Distribué lorsque l'application Flash Player obtient le focus du système d'exploitation et devient active.EventDispatcher
  Distribué lorsque le serveur ferme la connexion socket.Socket
  Distribué lorsqu'une connexion réseau est établie.Socket
 Inherited[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é lorsqu'il se produit une erreur d'entrée/sortie entraînant l'échec d'un envoi ou d'un chargement.Socket
  Distribué si un appel de Socket.connect() tente une connexion à un serveur situé hors du sandbox de sécurité de l'appelant ou à un port inférieur à 1024.Socket
  Distribué lorsqu'un socket a reçu des données.Socket
Détails de la propriété
bytesAvailablepropriété
bytesAvailable:uint  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Nombre d'octets de données disponibles en lecture dans la mémoire tampon d'entrée.

Votre code doit accéder à bytesAvailable pour garantir que les données disponibles sont suffisantes, avant leur lecture à l'aide d'une des méthodes read.



Implémentation
    public function get bytesAvailable():uint
connectedpropriété 
connected:Boolean  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Indique si l'objet Socket est actuellement connecté. Un appel de cette propriété renvoie la valeur true si le socket est connecté, false dans le cas contraire.



Implémentation
    public function get connected():Boolean
endianpropriété 
endian:String  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Indique l'ordre des octets des données ; les valeurs possibles sont des constantes de la classe flash.utils.Endian, Endian.BIG_ENDIAN ou Endian.LITTLE_ENDIAN.

La valeur par défaut est Endian.BIG_ENDIAN.



Implémentation
    public function get endian():String
    public function set endian(value:String):void

Voir aussi

objectEncodingpropriété 
objectEncoding:uint  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Contrôle la version du format AMF utilisée lors de l'écriture ou de la lecture d'un objet.



Implémentation
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

Voir aussi

timeoutpropriété 
timeout:uint  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: Flash Player 10, AIR 1.5

Indique le délai d'attente d'une connexion, en millisecondes.

Si la connexion n'est pas établie pendant le délai spécifié, elle échoue. La valeur par défaut est de 20 000 (vingt secondes).



Implémentation
    public function get timeout():uint
    public function set timeout(value:uint):void
Détails du constructeur
Socket()Constructeur
public function Socket(host:String = null, port:int = 0)

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Crée un nouvel objet Socket. En l'absence de paramètres, un socket initialement déconnecté est créé. Si des paramètres sont spécifiés, une tentative de connexion à l'hôte et au port indiqués est effectuée.

Remarque : il est fortement conseillé d'utiliser la forme du constructeur sans paramètre, d'ajouter ensuite des écouteurs d'événement éventuels, puis d'appeler la méthode connect avec les paramètres host et port. Cette séquence garantit que tous les écouteurs d'événement fonctionnent correctement.

Paramètres
host:String (default = null) — Nom de domaine DNS complet ou adresse IP au format 111.222.333.444. Dans Flash Player 9.0.115.0 et AIR 1.0 et les versions ultérieures, vous pouvez spécifier les adresses IPv6, telles que rtmp://[2001:db8:ccc3:ffff:0:444d:555e:666f]. Vous pouvez également spécifier null pour vous connecter au serveur hôte qui héberge le fichier SWF. Si le fichier SWF effectuant cet appel s'exécute dans un navigateur Web, host doit appartenir au même domaine que le fichier SWF.
 
port:int (default = 0) — Numéro du port TCP utilisé sur l'hôte cible pour établir une connexion. Dans Flash Player 9.0.124.0 et les versions ultérieures, l'hôte cible doit fournir un fichier de régulation de socket spécifiant que les connexions de socket sont autorisées depuis l'hôte fournissant le fichier SWF vers le port spécifié. Dans les versions précédentes de Flash Player, le fichier de régulation de socket n'est obligatoire que si vous souhaitez vous connecter à un numéro de port inférieur à 1024 ou à un hôte autre que celui servant le fichier SWF.

Evénements
connect:Event — Distribué lorsqu'une connexion réseau est établie.
 
ioError:IOErrorEvent — Distribué lorsqu'il se produit une erreur d'entrée/sortie entraînant l'échec de la connexion.
 
securityError:SecurityErrorEventCette erreur se produit dans le contenu SWF. Distribué si un appel à Socket.connect() tente de se connecter à un serveur qui ne fournit pas de fichier de régulation de socket, ou à un serveur dont le fichier de régulation n'accorde pas l'accès de l'hôte appelant au port spécifié. Pour plus d'informations sur les fichiers de régulation de socket, consultez le chapitre « Sécurité de Flash Player » du manuel Programmation avec ActionScript 3.0.

Valeur émise
SecurityError — Cette erreur se produit dans le contenu SWF pour les raisons suivantes :
  • Les fichiers locaux avec système de fichiers ne peuvent pas communiquer avec Internet. Pour contourner ce problème, reclassifiez le fichier SWF en tant que fichier local avec accès au réseau ou en tant que fichier approuvé. Le contenu de l'application AIR dans le sandbox de sécurité de l'application n'est pas soumis à cette restriction.
  • Il est impossible de spécifier un port de socket supérieur à 65535.
Détails de la méthode
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

Ferme le socket. Après l'appel de la méthode close(), toute lecture ou écriture de données est impossible.

L'événement close se produit uniquement lorsque le serveur ferme la connexion. Il n'est pas distribué lorsque vous appelez la méthode close().

Vous pouvez réutiliser l'objet Socket en lui appliquant à nouveau la méthode connect().


Valeur émise
IOError — La fermeture du socket a été impossible ou il n'a pas été ouvert.
connect()méthode 
public function connect(host:String, port:int):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Connecte le socket à l'hôte et au port spécifiés. Si la connexion échoue immédiatement, un événement est distribué ou une exception est émise : un événement d'erreur est distribué si un hôte a été spécifié, et une exception est émise dans le cas contraire. Dans tous les autres cas, l'état de la connexion est signalé par un événement. Si le socket est déjà connecté, la connexion existante est d'abord fermée.

Paramètres

host:String — Nom ou adresse IP de l'hôte auquel la connexion doit être établie. Si aucun hôte n’est spécifié, l'hôte hébergeant le fichier appelant est contacté. Si vous ne spécifiez pas d’hôte, utilisez un écouteur d’événement pour déterminer si la connexion a abouti.
 
port:int — Numéro du port auquel établir la connexion.


Evénements
connect:Event — Distribué lorsqu'une connexion réseau est établie.
 
ioError:IOErrorEvent — Distribué lorsqu'un hôte est spécifié et qu'il se produit une erreur d'entrée/sortie entraînant l'échec de la connexion.
 
securityError:SecurityErrorEvent — Distribué si un appel à Socket.connect() tente de se connecter à un serveur qui ne fournit pas de fichier de régulation de socket, ou à un serveur dont le fichier de régulation n'accorde pas l'accès de l'hôte appelant au port spécifié. Pour plus d'informations, consultez le chapitre « Sécurité de Flash Player » du manuel Programmation avec ActionScript 3.0.

Valeur émise
IOError — Aucun hôte n'a été spécifié et la connexion a échoué.
 
SecurityError — Cette erreur se produit dans le contenu SWF pour les raisons suivantes :
  • Les fichiers SWF locaux non approuvés ne peuvent pas communiquer avec Internet. Pour contourner cette restriction, reclassifiez le fichier en tant que fichier local avec accès au réseau ou en tant que fichier approuvé.
  • Il est impossible de spécifier un port de socket supérieur à 65535.
  • Dans la page HTML qui héberge le contenu SWF, le paramètre allowNetworking des balises object et embed est défini sur "none".

Voir aussi

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

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Efface les données accumulées dans la mémoire tampon de sortie du socket. Les données écrites à l'aide des méthodes write ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readBoolean()méthode 
public function readBoolean():Boolean

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit une valeur booléenne dans le socket. Après la lecture d'un seul octet, la méthode renvoie true si l'octet est non nul, false dans le cas contraire.

Valeur renvoyée
Boolean — Valeur true si l'octet lu est non nul, false dans le cas contraire.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readByte()méthode 
public function readByte():int

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un octet signé dans le socket.

Valeur renvoyée
int — Valeur comprise entre -128 et 127.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readBytes()méthode 
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit dans le socket le nombre d'octets de données spécifié par le paramètre length. Les octets sont lus dans le tableau d'octets spécifié, en partant de la position indiquée par offset.

Paramètres

bytes:ByteArray — Objet ByteArray dont les données doivent être lues.
 
offset:uint (default = 0) — Décalage à partir duquel la lecture des données doit commencer dans le tableau d'octets.
 
length:uint (default = 0) — Nombre d'octets à lire. La valeur 0 (par défaut) provoque la lecture de toutes les données disponibles.


Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readDouble()méthode 
public function readDouble():Number

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit dans le socket un nombre à virgule flottante à deux décimales et conforme à IEEE 754.

Valeur renvoyée
Number — Nombre à virgule flottante à deux décimales, conforme à IEEE 754.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readFloat()méthode 
public function readFloat():Number

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit dans le socket un nombre à virgule flottante à une décimale et conforme à IEEE 754.

Valeur renvoyée
Number — Nombre à virgule flottante à une décimale, conforme à IEEE 754.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readInt()méthode 
public function readInt():int

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un entier de 32 bits signé dans le socket.

Valeur renvoyée
int — Valeur comprise entre -2147483648 et 2147483647.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readMultiByte()méthode 
public function readMultiByte(length:uint, charSet:String):String

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit une chaîne multi-octets dans le flux d’octets, en utilisant le jeu de caractères spécifié.

Paramètres

length:uint — Nombre d'octets à lire dans le flux d'octets.
 
charSet:String — Chaîne désignant le le jeu de caractères à utiliser pour interpréter les octets. Parmi les chaînes de jeu de caractères supportées figurent shift_jis, CN-GB et iso-8859-1. Pour obtenir la liste complète, consultez la section Jeux de caractères pris en charge.

Remarque : si la valeur du paramètre charSet n'est pas reconnue par le système actuel, l'application utilise la page de code par défaut du système comme jeu de caractères. Par exemple, une valeur pour le paramètre charSet, comme dans myTest.readMultiByte(22, "iso-8859-01") qui utilise 01 au lieu de 1 pourra éventuellement fonctionner sur votre poste de développement, mais pas sur un autre poste. Sur l'autre ordinateur, l'application utilisera la page de code par défaut du système.

Valeur renvoyée
String — Chaîne codée au format UTF-8.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
readObject()méthode 
public function readObject():*

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit dans le socket un objet codé au format AMF (Action Message Format) sérialisé.

Valeur renvoyée
* — Objet désérialisé

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

readShort()méthode 
public function readShort():int

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un entier de 16 bits signé dans le socket.

Valeur renvoyée
int — Valeur comprise entre -32768 et 32767.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readUnsignedByte()méthode 
public function readUnsignedByte():uint

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un octet non signé dans le socket.

Valeur renvoyée
uint — Valeur comprise entre 0 et 255.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readUnsignedInt()méthode 
public function readUnsignedInt():uint

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un entier de 32 bits non signé dans le socket.

Valeur renvoyée
uint — Valeur comprise entre 0 et 4294967295.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readUnsignedShort()méthode 
public function readUnsignedShort():uint

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit un entier de 16 bits non signé dans le socket.

Valeur renvoyée
uint — Valeur comprise entre 0 et 65535.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readUTF()méthode 
public function readUTF():String

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit une chaîne UTF-8 dans le socket. La chaîne est supposée comporter un préfixe composé d'un entier court non signé indiquant sa longueur en octets.

Valeur renvoyée
String — Chaîne UTF-8.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
readUTFBytes()méthode 
public function readUTFBytes(length:uint):String

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Lit dans le socket le nombre d'octets de données UTF-8 spécifié par le paramètre length et renvoie une chaîne.

Paramètres

length:uint — Nombre d'octets à lire.

Valeur renvoyée
String — Chaîne UTF-8.

Valeur émise
EOFError — Les données à lire sont insuffisantes.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.
writeBoolean()méthode 
public function writeBoolean(value:Boolean):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit une valeur booléenne dans le socket. Cette méthode écrit un seul octet, dont la valeur correspond à 1 (true) ou à 0 (false ).

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:Boolean — Valeur à écrire dans le socket : 1 (true) ou 0 (false ).


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeByte()méthode 
public function writeByte(value:int):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit un octet dans le socket.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:int — Valeur à écrire dans le socket. Les 8 bits inférieurs de la valeur sont utilisés. Les 24 bits supérieurs ne sont pas pris en compte.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeBytes()méthode 
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit une séquence d'octets extraits du tableau d'octets spécifié. L'écriture commence à la position indiquée par offset.

Si vous omettez le paramètre length, la valeur par défaut, 0, est utilisée et la méthode écrit l'intégralité de la mémoire tampon, en commençant à offset.

Si vous omettez aussi le paramètre offset, toute la mémoire tampon est écrite.

Si offset ou length ne sont pas compris dans la plage gérée, ils sont ajustés de sorte à correspondre au début et à fin du tableau d'octets (bytes).

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

bytes:ByteArray — Objet ByteArray duquel extraire les données à écrire.
 
offset:uint (default = 0) — Décalage, commençant à zéro, dans l'objet ByteArray bytes auquel l'écriture des données doit commencer.
 
length:uint (default = 0) — Nombre d'octets à écrire. La valeur par défaut, 0, entraîne l'écriture de l'intégralité de la mémoire tampon, en partant de la valeur spécifiée par le paramètre offset.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeDouble()méthode 
public function writeDouble(value:Number):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit dans le socket un nombre à virgule flottante à deux décimales et conforme à IEEE 754.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:Number — Valeur à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeFloat()méthode 
public function writeFloat(value:Number):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit dans le socket un nombre à virgule flottante à une décimale conforme à IEEE 754.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:Number — Valeur à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeInt()méthode 
public function writeInt(value:int):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit un entier signé de 32 bits dans le socket.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:int — Valeur à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeMultiByte()méthode 
public function writeMultiByte(value:String, charSet:String):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit une chaîne multi-octets extraite du flux d'octets, en utilisant le jeu de caractères spécifié.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:String — Valeur de la chaîne à écrire.
 
charSet:String — Chaîne désignant le le jeu de caractères à utiliser pour interpréter les octets. Parmi les chaînes de jeu de caractères supportées figurent shift_jis, CN-GB et iso-8859-1. Pour obtenir la liste complète, consultez la section Jeux de caractères pris en charge.

Voir aussi

writeObject()méthode 
public function writeObject(object:*):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit un objet dans le socket au format AMF sérialisé.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

object:* — Objet à sérialiser.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeShort()méthode 
public function writeShort(value:int):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit un entier 16 bits dans le socket. Les octets écrits se présentent comme suit :

            (v >> 8) & 0xff v & 0xff
          

Les 16 bits inférieurs du paramètre sont utilisés. Les 16 bits supérieurs ne sont pas pris en compte.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:int — Valeur à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeUnsignedInt()méthode 
public function writeUnsignedInt(value:uint):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit un entier non signé de 32 bits dans le socket.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:uint — Valeur à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeUTF()méthode 
public function writeUTF(value:String):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit les données suivantes dans le socket : un entier non signé de 16 bits, qui indique, en octets, la longueur de la chaîne UTF-8 spécifiée, suivie de la chaîne elle-même.

Avant d'écrire la chaîne, la méthode calcule le nombre d'octets nécessaires pour représenter tous les caractères requis.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:String — Chaîne à écrire dans le socket.


Valeur émise
RangeError — La longueur est supérieure à 65535.
 
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

writeUTFBytes()méthode 
public function writeUTFBytes(value:String):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Ecrit une chaîne UTF-8 dans le socket.

Remarque : les données écrites au moyen de cette méthode ne sont pas transmises immédiatement. Elles sont mises en file d'attente jusqu'à l'appel de la méthode flush().

Paramètres

value:String — Chaîne à écrire dans le socket.


Valeur émise
IOError — Une erreur d'E/S s'est produite dans le socket ou ce dernier n'est pas ouvert.

Voir aussi

Détails de l'événement
close Evénement
Type d'objet événement: flash.events.Event
propriété Event.type = flash.events.Event.CLOSE

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Distribué lorsque le serveur ferme la connexion socket. L'événement close se produit uniquement lorsque le serveur ferme la connexion. Il n'est pas distribué lorsque vous appelez la méthode Socket.close().

La constante Event.CLOSE définit la valeur de la propriété type d'un objet événement close.

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 dont la connexion a été fermée.
connect Evénement  
Type d'objet événement: flash.events.Event
propriété Event.type = flash.events.Event.CONNECT

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Distribué lorsqu'une connexion réseau est établie.

La constante Event.CONNECT définit la valeur de la propriété type d'un objet événement connect.

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 Socket ou XMLSocket qui a établi une connexion réseau.
ioError Evénement  
Type d'objet évé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

Distribué lorsqu'il se produit une erreur d'entrée/sortie entraînant l'échec d'un envoi ou d'un chargement.

Définit la valeur de la propriété type d'un objet é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.
securityError Evénement  
Type d'objet évé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

Distribué si un appel de Socket.connect() tente une connexion à un serveur situé hors du sandbox de sécurité de l'appelant ou à un port inférieur à 1024.

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
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.

Voir aussi

socketData Evénement  
Type d'objet événement: flash.events.ProgressEvent
propriété ProgressEvent.type = flash.events.ProgressEvent.SOCKET_DATA

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Distribué lorsqu'un socket a reçu des données. Les événements de type socketData n'utilisent pas la propriété ProgressEvent.bytesTotal.

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

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 Objet qui traite activement l'événement.
bytesLoaded Nombre d'éléments ou d'octets chargés lors du traitement de l'événement par l'écouteur.
bytesTotal 0 ; cette propriété n'est pas utilisée par les objets événement socketData.
target Objet Socket indiquant la progression.
Exemples Utilisation des exemples
SocketExample.as

L'exemple suivant écrit et lit dans un socket et produit des informations transmises pendant des événements de socket. Vous trouverez ci-dessous des extraits de l'exemple :
  1. Le constructeur crée une occurrence de CustomSocket nommée socket et transmet le nom d'hôte localhost et le port 80 comme arguments. CustomSocket étendant Socket, un appel à la méthode super() invoque un constructeur de Socket.
  2. Cet exemple appelle ensuite la méthode configureListeners(), qui ajoute des écouteurs pour les événements de Socket.
  3. Enfin, la méthode de socket connect() est appelée avec localhost comme nom d'hôte et 80 comme numéro de port.

Remarque : pour exécuter l'exemple, vous avez besoin d'un serveur s'exécutant dans le domaine où réside le fichier SWF (dans l'exemple, localhost) et d'une écoute du port 80.

package {
    import flash.display.Sprite;

    public class SocketExample extends Sprite {

        public function SocketExample() {
            var socket:CustomSocket = new CustomSocket("localhost", 80);
        }
    }
}

import flash.errors.*;
import flash.events.*;
import flash.net.Socket;

class CustomSocket extends Socket {
    private var response:String;

    public function CustomSocket(host:String = null, port:uint = 0) {
        super();
        configureListeners();
        if (host && port)  {
            super.connect(host, port);
        }
    }

    private function configureListeners():void {
        addEventListener(Event.CLOSE, closeHandler);
        addEventListener(Event.CONNECT, connectHandler);
        addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
    }

    private function writeln(str:String):void {
        str += "\n";
        try {
            writeUTFBytes(str);
        }
        catch(e:IOError) {
            trace(e);
        }
    }

    private function sendRequest():void {
        trace("sendRequest");
        response = "";
        writeln("GET /");
        flush();
    }

    private function readResponse():void {
        var str:String = readUTFBytes(bytesAvailable);
        response += str;
    }

    private function closeHandler(event:Event):void {
        trace("closeHandler: " + event);
        trace(response.toString());
    }

    private function connectHandler(event:Event):void {
        trace("connectHandler: " + event);
        sendRequest();
    }

    private function ioErrorHandler(event:IOErrorEvent):void {
        trace("ioErrorHandler: " + event);
    }

    private function securityErrorHandler(event:SecurityErrorEvent):void {
        trace("securityErrorHandler: " + event);
    }

    private function socketDataHandler(event:ProgressEvent):void {
        trace("socketDataHandler: " + event);
        readResponse();
    }
}