环境:Node v8.2.1; Npm v5.3.0; OS Windows10
net 模块提供了创建基于流的 TCP 或 IPC 服务器(net.createServer())和客户端(net.createConnection()) 的异步网络 API。
我粘一个【TCP/IP、Http的区别】,对理解网络有帮助,里面总结得很好的一句话“TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据”
1、模块结构图
2、简单例子
2.1 服务端
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("服务端开始监听");
})
2.2 客户端
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);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。