NodeJS udp ERR_SOCKET_DGRAM_NOT_RUNNING 错误

发布于 2023-01-03 09:34:41 字数 763 浏览 79 评论 0

用 NodeJS 的 dgram 模块进行的 udp 传输;设备每采集到一条数据就通过 udp 推送到客户平台,发送数据的客户端代码大致如下:

const dgram = require('dgram');
const client = dgram.createSocket('udp4');
module.exports = sendToPlatform = {
 sendData: body => {
        const message = `2000#${body.timestamp}#${body.content}`
        client.send(message, 0, message.length, 41234, '192.168.1.7', (err) => {
            console.log(err)
            client.close()
        } 
  }
}

数据每采集到一条就调用一次 sendData 方法,自己模拟的服务器数据接收端有一直正常开启着,但是服务器端每次只能收到一条数据,然后就再也收不到了,重启下客户端程序又是只能收到一条。

查看日志发现报错:ERR_SOCKET_DGRAM_NOT_RUNNING

查看 dgram 包发现这个错误描述是说:A call was made and the UDP subsystem was not running.

最后解决办法注掉 client.close()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

文章
评论
26 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文