模塊概覽

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

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

  • net.Server:TCP server,內(nèi)部通過socket來實(shí)現(xiàn)與客戶端的通信。

  • net.Socket:tcp/本地 socket的node版實(shí)現(xiàn),它實(shí)現(xiàn)了全雙工的stream接口。

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

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

簡(jiǎn)單的 server+client 例子

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

var net = require('net');var PORT = 3000;var HOST = '127.0.0.1';// tcp服務(wù)端var server = net.createServer(function(socket){
    console.log('服務(wù)端:收到來自客戶端的請(qǐng)求');

   
        
		

網(wǎng)友評(píng)論