宝哥软件园

Node.js网络模块功能及事件监控使用分析

编辑:宝哥软件园 来源:互联网 时间:2021-08-27

本文通过实例描述了Node.js网络模块的功能和事件监控的用法。分享给大家参考,如下:

网络模块

与C语言的网络编程相比,Node.js具有更简单的开发模式和模块。也就是说,当需要使用net模块时,只需要要求(' net ')引入模块即可。

var net=required(' net ');服务器端编程

在引入模块的前提下:

1.创建新的TCP或IPC服务

var server=net . createserver(function(client _ socket){ console . log(' client coming ');});2.创建连接并启动服务器侦听。

server . listen({ host : ' 127 . 0 . 0 . 1 ',port:6080,exclusive:true,});客户端编程

介绍网络模块。

1.创建一个连接

//端口应与要连接的服务器端口一致。var socket=net . connect({ port :6080,host:' 127.0.0.1 ',},function () {console.log('已连接到服务器!');});影响

事件监督

常用监听事件事件类型事件触发条件连接成功调用事件发生错误调用事件关闭是在服务器关闭时触发的。请注意,如果存在连接,则在所有连接都结束之前,不会触发此事件。数据参数是缓冲区或字符串。数据编码由socket.setEncoding()设置。请注意,当套接字发送数据事件时,如果没有侦听器,数据将丢失。正在侦听服务器调用。侦听()。当服务被绑定时结束,这在套接字的另一端发送FIN包时被触发,从而结束套接字的可读端。监听事件的API都使用on()方法。

演示演示

这里有一个详细的演示,你可以自己尝试

tcpserver.js

//tcpserver . jsvar net=require(' net ');var server=net . createserver(function(client _ socket){ console . log(' client coming ');client _ socket . setencoding(' utf8 ');//client _ socket.on ('error '),函数(err) {console.log ('error ')将在收到客户端发送的错误时调用;});//有一个函数接收来自客户端的数据调用。//数据默认为Hex(二进制代码)格式。如果强制为utf8,底层将转换为utf8字符串并传递给client _ socket.on ('data '),function(data){ console . log(data);});//用户与client _ socket.on ('close '),function(client _ socket){ console . log(' close socket ')断开连接;});});//编写代码,指示服务器侦听端口。//配置好之后,会监听服务器,等待客户端访问。//host==address port==port exclusive==exclusive mode server . listen({ host : ' 127 . 0 . 0 . 1 ',port:6080,exclusive3360 true,}) server.on('connection ',function(client _ socket){ console . log(' connection ');});//server . unref();//停止节点的侦听事件server.on('错误',函数(错误){console.log('错误在服务器上',错误);});//服务器关闭事件server.on ('close ',函数(client _ socket){ console . log(' close server ');});tcpclient.js

//tcpclient . jsvar net=require(' net ');//net.socket类varsocket=net . connect({ port :6080,host3360' 127.0.0.1 ',},function () {console.log('已连接到服务器!');});//连接事件socket.on ('connect ',function(){ console . log(' connect success ');//数据传输socket.write('Hello World!')在utf-8中编码为二进制,“utf8”);});//事件socket.on ('error ',function(err){ console . log(' error is ',err);});//socket close事件socket.on ('close ',function(){ console . log(' close ');});//对方发送事件socket.on ('end ',function(){ console . log(' end event ')关闭数据包;})//调用socket.on ('data ',function(data){ console . log(data);});希望本文对nodejs程序的设计有所帮助。

更多资讯
游戏推荐
更多+