Latest web development tutorials

Node.js moduł netto

Node.js moduł netto

Moduł narzędziem node.js Moduł narzędziem node.js

Node.js własny moduł posiada szereg gadżetów dla danych sieci komunikacyjnej, w tym tworzenie podejścia klient / serwer, można wprowadzać do modułu w następujący sposób:

var net = require("net")

sposób

Nie. Sposób i opis
1 net.createServer ([opcje] [, connectionListener ])
Tworzenie serwera TCP. Parametry ConnectionListener automatycznie do zdarzenia 'połączenie' stworzył słuchacza.
2 net.connect (opcje [, connectionListener])
Zwraca nową "net.Socket" i połączyć się z podanym adresem i portem.
Gdy gniazdo ustalone, będzie wyzwalać zdarzenia connect.
3 net.createConnection (opcje [, connectionListener])
Utwórz hosta i port hosta do połączenia portu TCP. gospodarzem domyślnie 'localhost'.
4 net.connect (port [host] [ , connectListener])
Tworzenie portu dla połączenia portu hosta i hosta TCP. gospodarzem domyślnie 'localhost'. Parametr connectListener doda jako słuchacza connect imprezy. Powrót "net.Socket".
5 net.createConnection (port [host] [ , connectListener])
Tworzenie portu dla połączenia portu hosta i hosta TCP. gospodarzem domyślnie 'localhost'. Parametr connectListener doda jako słuchacza connect imprezy. Powrót "net.Socket".
6 net.connect (path [, connectListener])
Tworzenie połączenia do ścieżki gniazda Unix. Parametry ConnectListener jako detektor będzie dodane do connect zdarzenia. Powrót "net.Socket".
7 net.createConnection (path [, connectListener])
Tworzenie połączenia do ścieżki gniazda Unix. Parametr connectListener doda jako słuchacza connect imprezy. Powrót "net.Socket".
8 net.isIP (wejście)
Wykrywanie, czy adres IP wejściowego. IPv4 powrotu 4, powrót IPV6 6, w przeciwnym wypadku zwraca 0.
9 net.isIPv4 (wejście)
Jeśli adres jest wpisany IPv4 zwraca wartość true, w przeciwnym razie zwraca false.
10 net.isIPv6 (wejście)
Jeśli adres jest wpisany jako IPv6, zwraca wartość true, w przeciwnym razie zwraca false.

net.Server

net.Server często wykorzystywane do tworzenia TCP lub serwer lokalny.

Nie. Sposób i opis
1 server.listen (port [host] [ , Portfel] [, callback])
Słuchanie na określonych połączeń hosta ac portowych i portów hosta. Domyślnie, gospodarz przyjmuje dowolnego adresu IPv4 (INADDR_ANY) bezpośrednie połączenie. Port Port jest 0, to przypisać losowy port.
2 server.listen (path [, callback])
Określa ścieżkę połączenia, uruchomić lokalny serwer gniazda.
3 server.listen (uchwyt [, callback])
Podłączyć poprzez określenie uchwyt.
4 server.listen (opcje [, callback])
Opcje atrybuty: port port, hostów oraz zaległości, a także opcjonalną funkcję parametry wywołania zwrotnego, nazywając je razem server.listen (port, [adres], [Portfel] [callback]). Także, parametr ścieżka może być wykorzystane do określenia gniazdo UNIX.
5 server.close ([callback])
Serwer przestaje przyjmować nowe połączenia i utrzymania istniejących połączeń. Jest to funkcja asynchroniczna, gdy wszystkie serwery połączeń end zostanie zamknięty i będzie wyzwalać "bliskie" zdarzenie.
6 server.address ()
System operacyjny zwraca związany adres, nazwisko protokół i port serwera.
7 server.unref ()
Jeśli jest to zdarzenie systemowe serwera tylko jedno aktywne połączenie unref pozwoli program, aby wyjść.
8 server.ref ()
I unref I odwrotnie, jeśli jest to jedyny serwer, należy wywołać ref zanim będzie unref na serwerze nie pozwoli wyjść programów (domyślne zachowanie). Jeśli serwer został ref ref ponownie wywołany i nie będzie miał wpływu.
9 server.getConnections (callback)
Asynchronous Pobiera liczbę serwerów aktualnie aktywnego połączenia. Gdy gniazdo jest wysyłany do procesu potomnego po skuteczne; funkcji zwrotnej ma dwa argumenty błądzić i policzyć.

wydarzenie

Nie. Opis i wydarzenia
1 słuchający
Podczas rozmowy serwera server.listen wiążących wyzwala.
2 połączenie
Zostanie on uruchomiony, gdy nowe połączenie jest tworzone. Gniazdo jest instancją net.Socket.
3 blisko
To uruchamia serwer zostanie wyłączony. Zauważ, że jeśli istnieje związek, to zdarzenie nie zostanie wyzwolony dopóki wszystkie połączenia zamknięte.
4 błąd
Jest on uruchamiany, gdy wystąpi błąd. "Zamknij" zdarzenie zostanie wywołana bezpośrednio po zdarzeniu.

net.Socket

Obiekt net.Socket jest TCP lub UNIX Gniazdo abstrakcją. przykłady net.Socket z realizacją interfejsu strumienia dupleksu. Mogą one być tworzone w kliencie użytkownika (za pomocą connect ()) stosowanie, lub gdy są one tworzone przez węzeł i dostarczone do użytkownika za pomocą zdarzeń serwera połączenia.

wydarzenie

Zdarzenia net.Socket:

Nie. Opis i wydarzenia
1 wyszukiwanie
Po imieniu, ale przed podłączeniem do uruchomienia tego zdarzenia. Dla UNIX sokcet NA.
2 połączyć
Gdy spust zostanie pomyślnie ustanowione połączenie z gniazdem.
3 dane
Uruchamiany przy odbiorze danych.
4 koniec
Gdy gniazdo, a drugi koniec do wysyłania FIN pakietu, który wywołał zdarzenie.
5 Timeout
Gdy gniazdo idle timeout wyzwalany tylko pokaż Gniazdo był bezczynny. Użytkownik musi ręcznie zamknąć połączenie.
6 drenaż
Gdy spust był pusty, gdy bufor zapisu. Może on być używany do sterowania przesyłania.
7 błąd
Jest on uruchamiany, gdy wystąpi błąd.
8 blisko
Pożary, gdy gniazdo jest całkowicie zamknięta. Parametr Had_error jest wartością logiczną, która wskazuje, czy to z powodu gniazda błędy transmisji blisko.

nieruchomość

net.Socket zapewnia wiele użytecznych właściwości, łatwy do kontrolowania interakcji gniazda:

Nie. Nieruchomości i opis
1 socket.bufferSize
Ta właściwość wskazuje liczbę bajtów do zapisu do bufora.
2 socket.remoteAddress
Zdalne ciąg adres IP, na przykład: '74 .125.127.100 'lub' 2001: 4860: A005 :: 68 '.
3 socket.remoteFamily
Remote IP ciąg Suite, takich jak "IPv4" lub "IPv6".
4 socket.remotePort
Port zdalny, reprezentacja cyfrowa, na przykład: 80 lub 21.
5 socket.localAddress
Lokalny interfejs zdalnego połączenia sieciowego klienta wiązki pionowej w lokalnym adresem IP ciągu połączenia. Na przykład, jeśli słuchasz "0.0.0.0", a klient jest podłączony do '192.168.1.1', wartość będzie "192.168.1.1".
6 socket.localPort
Lokalne numery adres portu. Na przykład: 80 lub 21.
7 socket.bytesRead
Aby uzyskać liczbę bajtów odebranych.
8 socket.bytesWritten
Ilość bajtów wysłana.

sposób

Nie. Sposób i opis
1 Nowy net.Socket ([opcje])
Budujemy nowy obiekt gniazda.
2 Socket.connect (port [host] [ , connectListener])
Wyznaczonego portu i gospodarz portu hosta, należy utworzyć połączenie przez gniazdo. Host parametrów domyślnych localhost. Zwykle nie ma potrzeby korzystania net.createConnection gniazdo otwarte. Tylko będzie stosowany w celu osiągnięcia ich gniazdo kiedy.
3 Socket.connect (path [, connectListener])
Otwórz gniazdo UNIX określonej ścieżki. Zwykle nie ma potrzeby korzystania net.createConnection gniazdo otwarte. Tylko będzie stosowany w celu osiągnięcia ich gniazdo kiedy.
4 socket.setEncoding ([kodowanie])
Ustawianie kodowania
5 socket.write (dane [kodowanie] [ , callback])
Przesyłanie danych z gniazda. Drugi parametr określa kodowanie napisu, domyślnie kodowanie UTF-8.
6 socket.end ([Dane] [kodowanie ])
Częściowo zamkniętym gniazda. Na przykład, wysyła FIN pakietu. Serwer jest nadal możliwe, aby wysłać dane.
7 socket.destroy ()
Upewnij się, że żadna aktywność I / O na gnieździe. Jedynie w przypadku wystąpienia błędów tylko w razie potrzeby. (Błąd przetwarzania, itd.).
8 socket.pause ()
Wstrzymaj odczyt danych. Oznacza to, że dane nie wywoła zdarzenie. Do kontroli przesyłania jest bardzo przydatna.
9 socket.resume ()
Zadzwoń do pauzy () po przeczytaniu dane, które chcesz przywrócić.
10 socket.setTimeout (timeout [, callback])
Gniazdo bezczynnie przez ponad limitu czasu milisekund, gniazdo jest ustawiony na czas na zewnątrz.
11 socket.setNoDelay ([noDelay])
Wyłącz Nag algorytm (Nagle'a). Domyślnie połączenia TCP użycia algorytmu Nag, że bufor danych przed wysłaniem. Wysyłanie danych natychmiast noDelay ustawiona na wartość true w call socket.write () czasu. noDelay Wartością domyślną jest true.
12 socket.setKeepAlive ([Enable] [, initialDelay ])
Włączyć / wyłączyć funkcję długiego łącza, a przed wysłaniem pierwszy w długiej bezczynności połączeń na gniazdo sondy, ewentualnie ustawić początkowe opóźnienie. Wartością domyślną jest false. Ustawianie initialDelay (MS), aby ustawić opóźnienie ostatni pakiet odebrany i długi związek pomiędzy sondą. InitialDelay ustawiony na 0, to pozostawi domyślne (lub poprzedni) wartość. Wartością domyślną jest 0.
13 socket.address ()
System operacyjny zwraca związany adres, nazwisko protokół i port serwera. Zwracany obiekt ma trzy cechy, takie jak {portu: 12346, rodziny: "IPv4, adres: '127.0.0.1'}.
14 socket.unref ()
Jeśli jest to zdarzenie systemowe serwera tylko jedno aktywne połączenie unref pozwoli program, aby wyjść. Jeśli serwer został unref, unref ponownie wywołany i nie będzie miał wpływu.
15 socket.ref ()
I unref I odwrotnie, jeśli jest to jedyny serwer, należy wywołać ref zanim będzie unref na serwerze nie pozwoli wyjść programów (domyślne zachowanie). Jeśli serwer został ref ref ponownie wywołany i nie będzie miał wpływu.

Przykłady

Tworzenie server.js pliku, kod jest w następujący sposób:

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');
});

Realizacja powyższego kodu po stronie serwera:

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

Otwórz nowe okno, należy utworzyć plik client.js, kod jest w następujący sposób:

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('断开与服务器的连接');
});

Realizacja powyższego kodu klienta:

连接到服务器!
Hello World!

断开与服务器的连接

Przykłady pokazują, gif

Moduł narzędziem node.js Moduł narzędziem node.js