Objekt eingebautes Objekt

Objekt-Socket

Netzwerk-Socket-Objekt

Steckdose gehört zu net Modul, Erstellungsmethode

1
var s = new net.Socket();

Erbe

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>Stream|fd|read();write();flush();close();copyTo()] [<this>Socket|new Socket()|family;remoteAddress;remotePort;localAddress;localPort;timeout|connect();bind();listen();accept();recv();send()] [object] <:- [Stream] [Stream] <:- [Socket] Socket new Socket() family remoteAddress remotePort localAddress localPort timeout connect() bind() listen() accept() recv() send() Stream fd read() write() flush() close() copyTo() object toString() toJSON()

Konstrukteur

Socket

Socket-Konstruktor, erstellen Sie ein neues Socket-Objekt

1
new Socket(Integer family = net.AF_INET);

Aufrufparameter:

  • family: Integer, geben Sie den Adresssatz an, der Standard ist AF_INET, ipv4

Mitgliedsattribute

family

Integer, Abfrage des Adresssatzes des aktuellen Socket-Objekts

1
readonly Integer Socket.family;

remoteAddress

String, Abfrage der Adresse des aktuell verbundenen Teilnehmers

1
readonly String Socket.remoteAddress;

remotePort

Integer, fragen Sie den Port des aktuell verbundenen Teilnehmers ab

1
readonly Integer Socket.remotePort;

localAddress

String, Abfrage der lokalen Adresse der aktuellen Verbindung

1
readonly String Socket.localAddress;

localPort

Integer, Abfrage des aktuell verbundenen lokalen Ports

1
readonly Integer Socket.localPort;

timeout

Integer, Abfrage und Einstellung der Timeout-Zeit in Millisekunden

1
Integer Socket.timeout;

fd

Ganzzahl, Abfrage Stream Der entsprechende Dateideskriptorwert, implementiert von der Unterklasse implemented

1
readonly Integer Socket.fd;

Mitgliederfunktion

connect

Stellen Sie eine TCP-Verbindung her

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

Aufrufparameter:

  • host: String, geben Sie die Adresse oder den Hostnamen der anderen Partei an oder zeigen Sie auf den Pfad von Unix-Socket und Windows-Pipe
  • port: Integer, geben Sie den Port des anderen Teilnehmers an, ignorieren Sie diesen Parameter, wenn Sie Unix-Socket und Windows-Pipe verbinden

bind

Binden Sie den aktuellen Socket an den angegebenen Port aller lokalen Adressen

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

Aufrufparameter:

  • port: Integer, geben Sie den gebundenen Port an
  • allowIPv4: Boolean, geben Sie an, ob eine IPv4-Verbindung akzeptiert werden soll, der Standardwert ist true. Dieser Parameter ist in IPv6 gültig und abhängig vom Betriebssystem operating

Binden Sie den aktuellen Socket an den angegebenen Port der angegebenen Adresse

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

Aufrufparameter:

  • addr: String, geben Sie die Bindungsadresse an oder zeigen Sie auf den Pfad von Unix-Socket und Windows-Pipe
  • port: Integer, geben Sie den gebundenen Port an. Wenn Sie Unix-Socket und Windows-Pipe binden, ignorieren Sie diesen Parameter
  • allowIPv4: Boolean, geben Sie an, ob eine IPv4-Verbindung akzeptiert werden soll, der Standardwert ist true. Dieser Parameter ist in IPv6 gültig und abhängig vom Betriebssystem operating

listen

Beginnen Sie, auf Verbindungsanfragen zu hören

1
Socket.listen(Integer backlog = 120);

Aufrufparameter:

  • backlog: Integer, Länge der Anfragewarteschlange angeben, Anfragen, die die Länge überschreiten, werden abgelehnt, der Standardwert ist 120

accept

Warte und akzeptiere eine Verbindung

1
Socket Socket.accept() async;

Ergebnis zurückgeben:

  • Socket, Das empfangene Verbindungsobjekt zurückgeben

recv

Beim Lesen der angegebenen Datengröße aus der Verbindung garantiert recv im Gegensatz zur read-Methode nicht, dass die erforderlichen Daten gelesen werden, sondern kehrt sofort nach dem Lesen der Daten zurück

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

Aufrufparameter:

  • bytes: Integer, geben Sie die zu lesende Datenmenge an, der Standard liest Daten beliebiger Größe

Ergebnis zurückgeben:

  • Buffer, Die von der Verbindung gelesenen Daten zurückgeben

send

Schreiben Sie die angegebenen Daten in die Verbindung, diese Methode entspricht der Schreibmethode

1
Socket.send(Buffer data) async;

Aufrufparameter:

  • data: Buffer, Angesichts der zu schreibenden Daten

read

Daten der angegebenen Größe aus dem Stream lesen

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

Aufrufparameter:

  • bytes: Integer, geben Sie die zu lesende Datenmenge an, standardmäßig wird ein Datenblock zufälliger Größe gelesen, die Größe der gelesenen Daten hängt vom Gerät ab

Ergebnis zurückgeben:

  • Buffer, Die aus dem Stream gelesenen Daten zurückgeben, wenn keine Daten zum Lesen vorhanden sind oder die Verbindung unterbrochen ist, dann null zurückgeben

write

Schreiben Sie die angegebenen Daten in den Stream

1
Socket.write(Buffer data) async;

Aufrufparameter:

  • data: Buffer, Angesichts der zu schreibenden Daten

flush

Schreiben Sie den Inhalt des Dateipuffers auf das physische Gerät

1
Socket.flush() async;

close

Schließen Sie das aktuelle Stream-Objekt

1
Socket.close() async;

copyTo

Kopieren Sie die Streamdaten in den Zielstream

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

Aufrufparameter:

  • stm: Stream, Das Ziel-Stream-Objekt
  • bytes: Long, die Anzahl der kopierten Bytes

Ergebnis zurückgeben:

  • Long, Gibt die Anzahl der kopierten Bytes zurück

toString

Gibt die String-Darstellung des Objekts zurück, gibt im Allgemeinen "[Native Object]" zurück, das Objekt kann entsprechend seiner eigenen Eigenschaften neu implementiert werden

1
String Socket.toString();

Ergebnis zurückgeben:

  • String, Gibt die String-Darstellung des Objekts zurück

toJSON

Gibt die Darstellung des Objekts im JSON-Format zurück, gibt im Allgemeinen eine Sammlung von lesbaren Attributen zurück, die durch das Objekt definiert sind

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

Aufrufparameter:

  • key: String, unbenutzt

Ergebnis zurückgeben:

  • Value, Gibt einen Wert zurück, der JSON serialisierbar enthält