nodejs:net模块学习

本文介绍了Node.js的net模块,包括net.Server服务端和net.Socket客户端的使用,讲解了server.close()、server.ref()、server.unref()等关键方法,以及listening、connection、close、error等事件。此外,还提到了客户端的connect方法、超时设置和长连接配置,并展示了简单的应用实例。
摘要由CSDN通过智能技术生成

nodejs:net模块学习

net模块是是nodejs的一个核心模块。而且,http客户端与http服务端的通信均依赖于socket(net.Socket)。我也来学习一波

net模块的组成

在这里插入图片描述
不难看出,net模块主要包含两部分:

  • net.Server:TCP server,内部通过socket来实现与客户端的通信。
  • net.Socket:tcp/本地socket的node版实现,它实现了全双工的stream接口。

简单例子

netServer.js(服务端):

//导入net模块
const net =require("net");

//创建server
const server = net.createServer((socket)=>{
	socket.write("Hello");
	socket.on("data",(data)=>{
		//转换格式,得到的data是buffer类型
		console.log(data.toString());
	});
	socket.on("error",()=>{
		console.log("socket对象发生error事件");
	});
	socket.on("close",()=>{
		console.log("socket对象发生close事件");
	})
})

//捕获server对象发生错误
server.on("error",()=>{
	console.log("server对象发生error事件");
})

//监听端口
server.listen(8888,()=>{
	console.log("socket已成功开启8888端口");
})

netClient.js(客户端):

const net =require("net");

//创建连接
let socket = net.createConnection(8888,"192.0.0.10",()=>{
	console.log(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值