模塊概覽

net模塊是同樣是nodejs的核心模塊。在http模塊概覽里提到,http.Server繼承了net.Server,此外,http客戶端與http服務(wù)端的通信均依賴于socket(net.Socket)。也就是說,做node服務(wù)端編程,net基本是繞不開的一個模塊。

從組成來看,net模塊主要包含兩部分,了解socket編程的同學(xué)應(yīng)該比較熟悉了:

  • net.Server:TCP server,內(nèi)部通過socket來實現(xiàn)與客戶端的通信。
  • net.Socket:tcp/本地 socket的node版實現(xiàn),它實現(xiàn)了全雙工的stream接口。

本文從一個簡單的 tcp服務(wù)端/客戶端 的例子開始講解,好讓讀者有個概要的認(rèn)識。接著再分別介紹 net.Server、net.Socket 比較重要的API、屬性、事件。

對于初學(xué)者,建議把文中的例子本地跑一遍加深理解。

簡單的 server+client 例子

tcp服務(wù)端程序如下: