如何在Nodejs中通过dgram发送UDP数据包



我尝试了各种版本的Nodejs的数据报套接字模块的发送功能:

var dgram = require('dgram');
var client = dgram.createSocket('udp4');
client.send('Hello World!',0, 12, 12000, '127.0.0.1', function(err, bytes) {});
client.send('Hello2World!',0, 12, 12000, '127.0.0.1');
client.send('Hello3World!',12000, '127.0.0.1');
client.close();

我的服务器可以与另一个客户端一起工作,但不能与这个客户端一起工作。没有一个数据包到达。

Nodejs的dgram发送文档称

socket.send(msg[, offset, length], port[, address][, callback])

我的论点是有问题还是其他原因导致它失败了?在服务器程序中,我确实使用了12000端口和环回IP地址。

尝试在上次发送的消息的回调中关闭套接字。然后,只有在发送了消息之后,套接字才会关闭。

var dgram = require('dgram');
var client = dgram.createSocket('udp4');
client.send('Hello World!',0, 12, 12000, '127.0.0.1');
client.send('Hello2World!',0, 12, 12000, '127.0.0.1');
client.send('Hello3World!',0, 12, 12000, '127.0.0.1', function(err, bytes) {
client.close();
});

最新更新