nodeJS使用UDP传递数据

UDP-数据传输

  • 不可靠的、无连接的服务、传输效率高
  • 效率要求高、对精准性要求相对低
  • 如:在线视频、网络语音电话

nodeJS处理方案–dgram(数据报)

dgram模块提供了UDP数据包scoket的实现。官方链接
dgram方法:close、message、listening、error

使用

  • 首先创建一个客户端 client.js,一个服务端server.js两个文件。
  • 服务端:
const dgram = require('dgram')//引入

// 创建一个socket类,socket就是用来处理网络数据的一个标准 API对象
//通过socket,我们就可以对网络数据进行读取和输出

//新建dgram.Socket类,两种方式
// const socket = new dgram.Socket()
const serverSocket = dgram.createSocket('udp4')// udp4 => ipv4 ,udp6 => ipv6

//监听服务器开启
serverSocket.on('listening',()=>{
  console.log('服务器开启成功,等待数据:');
})

//监听客户端发送的数据
serverSocket.on('message', data => {
  console.log('接受的数据:',data.toString());//toString()是为了处理传过来的二进制数据变为字符串
})

//监听指定地址以及端口
serverSocket.bind(12345,'127.0.0.1')
  • 客户端
const dgram = require('dgram') 

const clientSocket = dgram.createSocket('udp4') 

//监听指定地址以及端口
//第一个参数是发送数据,第二个参是位端口号,第三个参数为ip地址
clientSocket.send('hello',12345,'127.0.0.1')

总结

使用dgram模块可以实现视频等数据的传播,这儿只是一个简单的数据传递。

你可能感兴趣的:(nodeJS,javascript,es6,node.js,javascript)