Objet intégré objet

Prise d'objet

Objet socket réseau

Le socket appartient au module net , méthode de création

1
var s = new net.Socket();

Héritage

Constructeur

Socket

Constructeur de socket, créez un nouvel objet Socket

1 2
new Socket(Integer family = net.AF_INET, Integer type = net.SOCK_STREAM);

Paramètres d'appel:

  • family : entier, spécifiez l'adresse définie, la valeur par défaut est AF_INET, ipv4
  • type : Entier, spécifiez la famille de protocoles, la valeur par défaut est SOCK_STREAM, tcp

Attributs des membres

family

Entier, interrogez le jeu d'adresses de l'objet Socket actuel

1
readonly Integer Socket.family;

type

Entier, interroge la famille de protocoles de l'objet Socket actuel

1
readonly Integer Socket.type;

remoteAddress

Chaîne, interrogez l'adresse de l'autre partie actuellement connectée

1
readonly String Socket.remoteAddress;

remotePort

Entier, interrogez le port de l'autre partie actuellement connectée

1
readonly Integer Socket.remotePort;

localAddress

String, interrogez l'adresse locale de la connexion actuelle

1
readonly String Socket.localAddress;

localPort

Entier, interrogez le port local actuellement connecté

1
readonly Integer Socket.localPort;

timeout

Entier, interroger et définir le délai d'expiration en millisecondes

1
Integer Socket.timeout;

Fonction membre

connect

Établir une connexion TCP

1 2
Socket.connect(String host, Integer port) async;

Paramètres d'appel:

  • host : String, spécifiez l'adresse ou le nom d'hôte de l'autre partie
  • port : entier, spécifiez l'autre port

bind

Liez le Socket actuel au port spécifié de toutes les adresses locales

1 2
Socket.bind(Integer port, Boolean allowIPv4 = true);

Paramètres d'appel:

  • port : entier, spécifiez le port lié
  • allowIPv4 : Boolean, spécifiez s'il faut accepter les connexions ipv4, la valeur par défaut est true. Ce paramètre est valide dans ipv6 et dépend du système d'exploitation

Liez le Socket actuel au port spécifié de l'adresse spécifiée

1 2 3
Socket.bind(String addr, Integer port, Boolean allowIPv4 = true);

Paramètres d'appel:

  • addr : String, spécifiez l'adresse de liaison
  • port : entier, spécifiez le port lié
  • allowIPv4 : Boolean, spécifiez s'il faut accepter les connexions ipv4, la valeur par défaut est true. Ce paramètre est valide dans ipv6 et dépend du système d'exploitation

listen

Commencez à écouter les demandes de connexion

1
Socket.listen(Integer backlog = 120);

Paramètres d'appel:

  • backlog : Entier, spécifiez la longueur de la file d'attente des demandes, les demandes au-delà seront rejetées, la valeur par défaut est 120

accept

Attendez et acceptez une connexion

1
Socket Socket.accept() async;

Résultat de retour:

  • Socket , renvoie l'objet de connexion reçu

recv

Lire la taille de données spécifiée à partir de la connexion, contrairement à la méthode read, recv ne garantit pas que les données requises sont lues, mais retourne immédiatement après la lecture des données

1
Buffer Socket.recv(Integer bytes = -1) async;

Paramètres d'appel:

  • bytes : entier, spécifiez la quantité de données à lire, la valeur par défaut lit les données de toute taille

Résultat de retour:

  • Buffer , retourne les données lues depuis la connexion

recvfrom

Lire un paquet UDP

1
NObject Socket.recvfrom(Integer bytes = -1) async;

Paramètres d'appel:

  • bytes : entier, spécifiez la quantité de données à lire, la valeur par défaut lit les données de toute taille

Résultat de retour:

  • NObject , retourne le paquet de données lu depuis la connexion

Les résultats renvoyés par recvfrom sont les suivants:

  • data : bloc de données binaires reçu
  • address : l'adresse de l'expéditeur
  • port : le port de l'expéditeur

send

Ecrire les données données à la connexion, cette méthode est équivalente à la méthode d'écriture

1
Socket.send(Buffer data) async;

Paramètres d'appel:

  • data : Buffer , compte tenu des données à écrire

sendto

Envoyez un paquet UDP à l'ip: port donné

1 2 3
Socket.sendto(Buffer data, String host, Integer port) async;

Paramètres d'appel:

  • data : Buffer , compte tenu des données à écrire
  • host : String, spécifiez l'adresse IP cible ou le nom d'hôte
  • port : entier, spécifiez le port cible

read

Lire les données de la taille spécifiée dans le flux

1
Buffer Socket.read(Integer bytes = -1) async;

Paramètres d'appel:

  • bytes : Entier, spécifiez 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ésultat de retour:

  • Buffer , retourne les données lues dans le flux, s'il n'y a pas de données à lire, ou si la connexion est interrompue, elle retourne null

write

Ecrire les données données dans le flux

1
Socket.write(Buffer data) async;

Paramètres d'appel:

  • data : Buffer , compte tenu des données à écrire

flush

Ecrire le contenu du tampon de fichier sur le périphérique physique

1
Socket.flush() async;

close

Fermer l'objet de flux actuel

1
Socket.close() async;

copyTo

Copier les données du flux dans le flux cible

1 2
Long Socket.copyTo(Stream stm, Long bytes = -1) async;

Paramètres d'appel:

  • stm : Stream , objet de flux cible
  • bytes : Long, le nombre d'octets copiés

Résultat de retour:

  • Long , renvoie le nombre d'octets copiés

toString

Renvoie la représentation sous forme de chaîne de l'objet, renvoie généralement "[Native Object]", l'objet peut être réimplémenté selon ses propres caractéristiques

1
String Socket.toString();

Résultat de retour:

  • String , renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie la représentation au format JSON de l'objet, renvoie généralement une collection d'attributs lisibles définis par l'objet

1
Value Socket.toJSON(String key = "");

Paramètres d'appel:

  • key : chaîne, inutilisée

Résultat de retour:

  • Value , renvoie une valeur contenant JSON sérialisable