Latest web development tutorials

Node.js Net Modul

Node.js Net Modul

Node.js Werkzeugmodul Node.js Werkzeugmodul

Node.js Net Modul eine Reihe von Gadgets für die zugrunde liegende Netzwerk-Kommunikation, einschließlich der Erstellung von Client / Server-Ansatz können wir in das Modul auf folgende Weise eingeführt werden:

var net = require("net")

Weg

Nein. Method & Beschreibung
1 net.createServer ([Optionen] [, connectionListener ])
Erstellen Sie einen TCP-Server. ConnectionListener Parameter automatisch auf die "Verbindung" Ereignis erstellt Zuhörer.
2 net.connect (Optionen [, connectionListener])
Es gibt ein neues "net.Socket ', und an die angegebene Adresse und Port anschließen.
Wenn der Socket aufgebaut, wird es den "Verbinden" Ereignis auslösen.
3 net.createConnection (Optionen [, connectionListener])
Erstellen Sie einen Host und Host-Port zu Port TCP-Verbindung. Host ist standardmäßig 'localhost'.
4 net.connect (port [, host] [ , connectListener])
Legen Sie einen Port für den Host-Port und Host-TCP-Verbindung. Host ist standardmäßig 'localhost'. Parameter connectListener wird als Zuhörer zu "Verbinden" Ereignis hinzuzufügen. Zurück 'net.Socket'.
5 net.createConnection (port [, host] [ , connectListener])
Legen Sie einen Port für den Host-Port und Host-TCP-Verbindung. Host ist standardmäßig 'localhost'. Parameter connectListener wird als Zuhörer zu "Verbinden" Ereignis hinzuzufügen. Zurück 'net.Socket'.
6 net.connect (Pfad [, connectListener])
Erstellen Sie eine Verbindung zu dem Pfad des Unix-Socket. ConnectListener Parameter als Zuhörer wird auf die "connect" Ereignis hinzugefügt werden. Zurück 'net.Socket'.
7 net.createConnection (Pfad [, connectListener])
Erstellen Sie eine Verbindung zu dem Pfad des Unix-Socket. Parameter connectListener wird als Zuhörer zu "Verbinden" Ereignis hinzuzufügen. Zurück 'net.Socket'.
8 net.isIP (Eingang)
Nachweis, ob die Eingabe IP-Adresse. IPV4 Rückkehr 4, IPV6 Rückkehr 6, ansonsten 0 zurück.
9 net.isIPv4 (Eingang)
Wenn die eingegebene Adresse ist IPV4, gibt true zurück, andernfalls false.
10 net.isIPv6 (Eingang)
Wenn die Adresse als IPV6 eingegeben wird, gibt true zurück, andernfalls false.

net.Server

net.Server oft verwendet, um eine TCP oder einen lokalen Server zu erstellen.

Nein. Method & Beschreibung
1 server.listen (port [, host] [ , Bestand] [, Rückruf])
Hören auf den angegebenen Port und Host-Port-Host-ac-Verbindungen. Standardmäßig akzeptiert der Host alle IPv4-Adresse (INADDR_ANY) direkte Verbindung. Port-Port ist 0, wird es einen zufälligen Port zuweisen.
2 server.listen (Pfad [, Rückruf])
Gibt den Pfad der Verbindung, starten Sie eine lokale Socket-Server.
3 server.listen (handle [, Rückruf])
Schließen Sie durch den Griff angeben.
4 server.listen (Optionen [, Rückruf])
Optionen Attribute: Port Port, Host-Host, und -bestand sowie optionale Parameter Callback-Funktion, rufen sie zusammen server.listen (Hafen, [host], [Rückstand], [Rückruf]). Auch kann der Pfad-Parameter verwendet werden, um einen UNIX-Socket angeben.
5 server.close ([Rückruf])
Server Verbindungen nicht mehr akzeptiert und pflegen bestehende Verbindungen. Dies ist eine asynchrone Funktion, wenn alle Verbindungen End-Server heruntergefahren wird, und wird das "Schließen" Ereignis auslösen.
6 server.address ()
Das Betriebssystem gibt die gebundene Adresse, Protokoll Familiennamen und den Server-Port.
7 server.unref ()
Wenn dies ein Server-System-Ereignis ist nur ein aktiver Anruf UNREF ermöglicht das Programm zu beenden.
8 server.ref ()
Und UNREF Umgekehrt, wenn dies die einzige Server ist, rufen Sie die ref, bevor auf dem Server sein UNREF wird nicht das Programm beendet (Standardverhalten) ermöglichen. Wenn der Server ref ist, wird ref wieder aufgerufen und wird keinen Einfluss haben.
9 server.getConnections (Rückruf)
Asynchrone Ruft die Anzahl der Server, die aktuell aktive Verbindung. Wenn die Buchse für das Kind Prozess nach dem Wirksamwerden gesendet wird; Callback-Funktion hat zwei Argumente irren und zu zählen.

Ereignis

Nein. Events & Beschreibung
1 hören
Wenn der Server Anrufe server.listen Bindung auslöst.
2 Verbindung
Es wird ausgelöst, wenn eine neue Verbindung erzeugt wird. Buchse ist net.Socket Instanz.
3 schließen
Es löst der Server abgeschaltet wird. Beachten Sie, dass, wenn eine Verbindung ist, wird dieses Ereignis nicht ausgelöst werden, bis alle Verbindungen geschlossen.
4 Fehler
Es ausgelöst wird, wenn ein Fehler auftritt. 'Schließen' Veranstaltung wird direkt im Anschluss an die Veranstaltung genannt.

net.Socket

net.Socket Objekt ist ein TCP oder UNIX-Socket-Abstraktion. net.Socket Beispiele für die Realisierung einer Duplexstrom-Schnittstelle. Sie können in der Benutzer-Client erstellt werden, verwenden (die connect () verwendet wird), oder wenn sie durch den Knoten erstellt werden, und dem Benutzer über den Verbindungsserver Ereignisse geliefert.

Ereignis

net.Socket Ereignisse:

Nein. Events & Beschreibung
1 Nachschlagen
Nach einem Namen, aber vor dem Anschluss dieses Ereignis auszulösen. Für UNIX sokcet NA.
2 verbinden
Wenn der Trigger erfolgreich Socket-Verbindung hergestellt.
3 Daten
Wird ausgelöst, wenn Daten empfangen werden.
4 Ende
Wenn die Buchse und das andere Ende FIN-Paket zu senden, der das Ereignis ausgelöst hat.
5 Timeout
Wenn die Buchse Idle Timeout nur Show Steckdose ausgelöst hat untätig. Der Benutzer muss die Verbindung manuell schließen.
6 entwässern
Wenn der Auslöser war leer, wenn der Schreib-Cache. Es kann mit dem Hochladen zu steuern.
7 Fehler
Es ausgelöst wird, wenn ein Fehler auftritt.
8 schließen
Ausgelöst wird, wenn der Sockel vollständig geschlossen ist. Had_error Parameter ist ein boolescher Wert, der Fehler Steckdose in der Nähe, ob da die Übertragung anzeigt.

Immobilien

net.Socket bietet viele nützliche Eigenschaften, einfache Socket-Interaktion zu steuern:

Nein. Property & Beschreibung
1 socket.bufferSize
Diese Eigenschaft zeigt die Anzahl von Bytes in den Puffer geschrieben werden.
2 socket.remoteAddress
Remote-IP-Adresse Zeichenfolge, zum Beispiel: '74 .125.127.100 "oder" 2001: 4860: A005 :: 68 '.
3 socket.remoteFamily
Remote-IP-Protokoll-Suite Zeichenfolge wie "IPv4" oder "IPv6".
4 socket.remotePort
Remote-Port, eine digitale Darstellung, zum Beispiel: 80 oder 21.
5 socket.localAddress
Lokale Schnittstelle des Remote-Client-Netzwerkverbindung Bündel aufrecht in die lokale IP-Adresse des Verbindungszeichenfolge. wenn Sie "0.0.0.0" Zum Beispiel hören und der Client ist mit "192.168.1.1", würde der Wert "192.168.1.1" sein.
6 socket.localPort
Lokaler Port Adressnummern. Zum Beispiel: 80 oder 21.
7 socket.bytesRead
Um die Anzahl der empfangenen Bytes zu bekommen.
8 socket.bytesWritten
Die Anzahl der gesendeten Bytes.

Weg

Nein. Method & Beschreibung
1 neue net.Socket ([Optionen])
Wir bauen ein neues Socket-Objekt.
2 Socket.connect (port [, host] [ , connectListener])
Designated Port und Host-Port-Host, erstellen Sie eine Socket-Verbindung. Host-Parameter standardmäßig auf localhost. Normalerweise keine Notwendigkeit net.createConnection offene Steckdose verwenden. Nur werden Sie genutzt, um ihre Fassung zu erreichen, wenn.
3 Socket.connect (Pfad [, connectListener])
Öffnen Sie den Unix-Socket angegebenen Pfad. Normalerweise keine Notwendigkeit net.createConnection offene Steckdose verwenden. Nur werden Sie genutzt, um ihre Fassung zu erreichen, wenn.
4 socket.setEncoding ([Kodierung])
Einstellen Codierung
5 socket.write (data [, Kodierung] [ , Rückruf])
Die Übertragung von Daten auf dem Sockel. Der zweite Parameter die Codierung der Zeichenfolge gibt, ist die Standard-UTF8-Codierung.
6 socket.end ([Daten] [, Kodierung ])
Halbgeschlossene Buchse. Zum Beispiel sendet er ein FIN-Paket. Server noch möglich ist, Daten zu senden.
7 socket.destroy ()
Stellen Sie sicher, dass keine E / A-Aktivität auf dem Sockel. Nur für den Fall, tritt nur ein Fehler, wie gebraucht. (Verarbeitungsfehler, etc.).
8 socket.pause ()
Pause gelesenen Daten. Das heißt, werden die Daten nicht Ereignis auslösen. Für Upload-Steuerung ist sehr nützlich.
9 socket.resume ()
Rufen Sie die Pause () nach dem Lesen der Daten die Sie wiederherstellen möchten.
10 socket.setTimeout (Timeout [, Rückruf])
Buchse im Leerlauf für mehr als Timeout Millisekunden wird die Steckdose zu Zeit eingestellt.
11 socket.setNoDelay ([NoDelay])
Deaktivieren Sie Nag (Nagle-Algorithmus). Durch die Standard-TCP-Verbindungen Verwendung Nag Algorithmus, Puffer sie Daten vor dem Versenden. Senden von Daten sofort eingestellt NoDelay auf true in einem Aufruf socket.write () Zeit. NoDelay Der Standardwert ist true.
12 socket.setKeepAlive ([ermöglichen] [, initialDelay ])
Deaktivieren / aktivieren, die lange Link-Funktion, und bevor der erste in einer langen Verbindungen im Leerlauf an der Sonde Buchse zu senden, optional die anfängliche Verzögerung eingestellt. Der Standardwert ist false. initialDelay (ms) Die Einstellung auf die Verzögerung letzte Paket empfangen und eine lange Verbindung zwischen der Sonde. Die initialDelay auf 0 gesetzt, wird die Standard (oder vorherigen) Wert verlassen. Der Standardwert ist 0.
13 socket.address ()
Das Betriebssystem gibt die gebundene Adresse, Protokoll Familiennamen und den Server-Port. Das zurückgegebene Objekt hat drei Attribute, wie zum Beispiel {port: 12346, Familie: "IPv4", Adresse: '127.0.0.1'}.
14 socket.unref ()
Wenn dies ein Server-System-Ereignis ist nur ein aktiver Anruf UNREF ermöglicht das Programm zu beenden. Wenn der Server UNREF wurde, wird UNREF aufgerufen wieder und wird keinen Einfluss haben.
15 socket.ref ()
Und UNREF Umgekehrt, wenn dies die einzige Server ist, rufen Sie die ref, bevor auf dem Server sein UNREF wird nicht das Programm beendet (Standardverhalten) ermöglichen. Wenn der Server ref ist, wird ref wieder aufgerufen und wird keinen Einfluss haben.

Beispiele

Erstellen server.js Datei, wird der Code wie folgt:

var net = require('net');
var server = net.createServer(function(connection) { 
   console.log('client connected');
   connection.on('end', function() {
      console.log('客户端关闭连接');
   });
   connection.write('Hello World!\r\n');
   connection.pipe(connection);
});
server.listen(8080, function() { 
  console.log('server is listening');
});

Die Umsetzung des oben serverseitigen Code:

$ node server.js
server is listening   # 服务已创建并监听 8080 端口

Öffnen Sie ein neues Fenster, erstellen Client.js Datei, wird der Code wie folgt:

var net = require('net');
var client = net.connect({port: 8080}, function() {
   console.log('连接到服务器!');  
});
client.on('data', function(data) {
   console.log(data.toString());
   client.end();
});
client.on('end', function() { 
   console.log('断开与服务器的连接');
});

Die Umsetzung des oben Client-Code:

连接到服务器!
Hello World!

断开与服务器的连接

Gif Beispiele zeigen

Node.js Werkzeugmodul Node.js Werkzeugmodul