Node.js网络开发 | 构建TCP服务器


theme: v-green

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第10天,点击查看活动详情

构建TCP服务器

首先我们需要知道网络基础知识--OSI网络模型,它将网络通信功能分为了7层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。TCP协议就是位于传输层的协议。

使用Node.js构建TCP服务器

Node.js在创建一个TCP服务器的时候使用的是net依赖。首先就是需要使用require来加载依赖。 node.js var net = require('net'); 其次就是使用createServer方法创建TCP服务器 node.js var server =net.createServer(function(socket){ console.log("创建TCP服务器连接"); });

监听客户端的连接

我们使用listen的方法来监听客户的连接并设置监听的端口。 node.js server.listen(8080,function(){ console.log("8080端口监听"); }) 当我们运行代码的时候,就能看到我们在listen执行的回调函数中打印的:"8080端口监听"。

查看服务器监听的地址

创建完TCP服务器之后,我们就可以使用server.address()方法来查看这个TCP服务器监听的地址,并且它会返回一个JSON对象。 js //获取地址信息 server.address(); //获取地址端口 console.log(address.port); console.log(address.address);

连接服务器的客户端数量

我们可以使用server.getConnections()方法获取连接服务器的客户端数量。这方法我们使用异步。 js //设置最大连接数,当客户端连接服务器数量10的时候就无法连接服务器了 server.maxConnections=10; server.getConnections(function(err,count){ console.log("当前客户端数量"+count); }); 注:此方法放入创建服务器的方法体代码中。

获取客户端发送的数据

socket对象可以用来获取客户端发送的数据流,每次接收到数据的时候触发data时间通过监听这个事件就能获取客户端发送的数据。 js //监听data事件 socket.on('data',function(data){ console.log(data.toString()); });

发送数据给客户端

利用socket.write()可以在服务器中发送数据给客户端 ```js var massage="123456789" socket.write(message,function(){ var writeSize=socket.bytesWritten; console.log(message); console.log(writeSize);

}); ```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值