nodeJS使用TCP传输数据

TCP-数据传输

  • 可靠的、有连接的服务、传输效率低
  • 对精准度要求高、但是传输效率低
  • 表单提交、文件传输等

nodeJS处理方案-net模块

创建一个服务端

  • 监听地址以及端口
  • 处理发送到当前监听地址以及端口的数据
  • 返回(发送)数据到连接的客户端

server.js:

const net = require('net')

//创建一个服务端
//const server = new net.Server()
const server = net.createServer()

//客户端有人连接的时候触发
server.on('connection',(socket)=>{//当前链接的socket对象
  console.log('有人连接了');

  socket.write('hello')

  //监听客户端数据
  socket.on('data',data=>{
    console.log(data);
  })
})

server.listen(12345,'127.0.0.1')

client.js:

const net = require('net')

//  net.Socket类

//1.new net.Socket()
//2. net.createConnection()

//建立链接
const clientSocket = net.createConnection(12345, '127.0.0.1')

//监听数据
clientSocket.on('data', data=>{
  console.log('服务器返回的数据:',data.toString());

  //向服务端发送数据
  clientSocket.write('get info')
})

注意 :在开发的时候传输的数据可能很大,TCP是通过数据包的形式传输的数据,所以这儿可能需要多次调用 data 方法,所以这个地方需要拼接每次传过来的二进制数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值