ObjetSocket
objet de prise réseau
La prise appartient ànetmodule, méthode de création
1var s = new net.Socket();
relation d'héritage
Constructeur
Socket
Constructeur Socket, crée un nouvel objet Socket
1new Socket(Integer family = net.AF_INET);
Paramètres d'appel :
- family: Entier, spécifiez l'adresse définie, la valeur par défaut est AF_INET, ipv4
propriétés des membres
family
Entier, interrogez l'ensemble d'adresses de l'objet Socket actuel
1readonly Integer Socket.family;
remoteAddress
Chaîne, interroge l'adresse de l'autre partie pour la connexion actuelle
1readonly String Socket.remoteAddress;
remotePort
Entier, interroge le port homologue actuellement connecté
1readonly Integer Socket.remotePort;
localAddress
String, interroge l'adresse locale de la connexion actuelle
1readonly String Socket.localAddress;
localPort
Entier, interrogez le port local de la connexion actuelle
1readonly Integer Socket.localPort;
timeout
Entier, interroger et définir l'unité de délai d'attente en millisecondes
1Integer Socket.timeout;
fd
Entier, requêteStreamLa valeur du descripteur de fichier correspondant, implémentée par les sous-classes
1readonly Integer Socket.fd;
fonction membre
connect
Établir une connexion TCP
1
2
3Socket.connect(String host,
Integer port,
Integer timeout = 0) async;
Paramètres d'appel :
- host: Chaîne, spécifie l'adresse ou le nom d'hôte de l'autre partie, ou peut pointer vers des chemins de socket Unix et de canal Windows
- port: Nombre entier,spécifie le port de l'autre partie. Lors de la connexion d'un socket Unix et d'un canal Windows, ce paramètre doit être 0
- timeout: Entier, spécifie le délai d'expiration, l'unité est en millisecondes, la valeur par défaut est 0
bind
Lier le Socket actuel au port spécifié de toutes les adresses locales
1
2Socket.bind(Integer port,
Boolean allowIPv4 = true);
Paramètres d'appel :
- port: Entier, spécifie le port lié
- allowIPv4: Booléen, spécifie s'il faut accepter les connexions ipv4, la valeur par défaut est true. Ce paramètre est valable pour ipv6 et dépend du système d'exploitation
Lier le Socket actuel au port spécifié à l'adresse spécifiée
1
2
3Socket.bind(String addr,
Integer port = 0,
Boolean allowIPv4 = true);
Paramètres d'appel :
- addr: String, spécifie l'adresse de liaison et peut également pointer vers des chemins de socket Unix et de canal Windows
- port : Entier,spécifie le port lié. Ce paramètre est ignoré lors de la liaison du socket Unix et du canal Windows.
- allowIPv4: Booléen, spécifie s'il faut accepter les connexions ipv4, la valeur par défaut est true. Ce paramètre est valable pour ipv6 et dépend du système d'exploitation
listen
Commencez à écouter les demandes de connexion
1Socket.listen(Integer backlog = 120);
Paramètres d'appel :
- backlog : Nombre entier, spécifie la longueur de la file d'attente des requêtes. Les requêtes dépassant la limite seront rejetées. La valeur par défaut est 120.
accept
Attendez et acceptez une connexion
1Socket Socket.accept() async;
Résultats de retour :
- Socket, renvoie l'objet de connexion reçu
recv
Lire des données d'une taille spécifiée à partir de la connexion. Contrairement à la méthode read, recv ne garantit pas que les données requises ont été lues, mais revient immédiatement après la lecture des données.
1Buffer Socket.recv(Integer bytes = -1) async;
Paramètres d'appel :
- bytes : Entier,spécifie la quantité de données à lire. Par défaut, les données de n'importe quelle taille sont lues.
Résultats de retour :
- Buffer, renvoie les données lues depuis la connexion
send
Écrivez les données données sur la connexion.Cette méthode est équivalente à la méthode d'écriture.
1Socket.send(Buffer data) async;
Paramètres d'appel :
- data:Buffer, étant donné les données à écrire
read
Lire les données de taille spécifiée à partir du flux
1Buffer Socket.read(Integer bytes = -1) async;
Paramètres d'appel :
- bytes : Nombre entier, spécifie la quantité de données à lire. La valeur par défaut est de lire des blocs de données de taille aléatoire. La taille des données lues dépend de l'appareil.
Résultats de retour :
- Buffer, renvoie les données lues à partir du flux. S'il n'y a aucune donnée à lire ou si la connexion est interrompue, null est renvoyé.
write
Écrivez les données données dans le flux
1Socket.write(Buffer data) async;
Paramètres d'appel :
- data:Buffer, étant donné les données à écrire
flush
Écrire le contenu du tampon de fichier sur un périphérique physique
1Socket.flush() async;
close
Fermer l'objet de flux actuel
1Socket.close() async;
copyTo
Copier les données du flux vers le flux cible
1
2Long Socket.copyTo(Stream stm,
Long bytes = -1) async;
Paramètres d'appel :
- stm:Stream, objet de flux cible
- bytes: Long, nombre d'octets copiés
Résultats de retour :
- Long, renvoie le nombre d'octets copiés
toString
Renvoie la représentation sous forme de chaîne de l'objet. Généralement, "[Native Object]" est renvoyé. L'objet peut être réimplémenté en fonction de ses propres caractéristiques.
1String Socket.toString();
Résultats de retour :
- String, renvoie la représentation sous forme de chaîne de l'objet
toJSON
Renvoie une représentation au format JSON de l'objet, renvoyant généralement une collection de propriétés lisibles définies par l'objet.
1Value Socket.toJSON(String key = "");
Paramètres d'appel :
- key: Chaîne, non utilisée
Résultats de retour :
- Value, renvoie une valeur contenant du JSON sérialisable