代码之家  ›  专栏  ›  技术社区  ›  Gergely

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

  •  0
  • Gergely  · 技术社区  · 6 年前

    我尝试了不同版本的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 send documentation

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

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

    1 回复  |  直到 6 年前
        1
  •  8
  •   user846016    5 年前

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

    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();
    });
    
    推荐文章