環境:Node v8.2.1; Npm v5.3.0; OS Windows10html
net 模塊提供了建立基於流的 TCP 或 IPC 服務器(net.createServer())和客戶端(net.createConnection()) 的異步網絡 API。
我粘一個【TCP/IP、Http的區別】,對理解網絡有幫助,裏面總結得很好的一句話「TPC/IP協議是傳輸層協議,主要解決數據如何在網絡中傳輸,而HTTP是應用層協議,主要解決如何包裝數據」服務器
const net = require("net"), host = "127.0.0.1", port = 3000; const server = net.createServer(socket => { console.log("【server】:收到客戶端請求"); socket.on("data",data=>{ console.log("【server】:收到來自客戶端的數據-"+data.toString()); // 給客戶端返回數據 socket.write("客戶端你好,我是服務端") }); socket.on('close', ()=>{ console.log('【server】:客戶端鏈接斷開'); }); }).listen(port,host,()=>{ console.log("服務端開始監聽"); })
const net = require("net"), host = "127.0.0.1", port = 3000; const client = net.createConnection(port, host); client.on("connect", () => { console.log("【client】:已經創建了與服務端的鏈接"); }) client.on("data", data => { console.log(`【client】:收到服務端消息-${data.toString()}`); }) client.on("close", () => { console.log("【client】:鏈接已斷開"); }); client.write("你好呀,服務端"); setTimeout(() => { client.end('你好,我是客戶端'); }, 3000);