开发者社区> 问答> 正文

JS如何在node.js中订阅广播地址(255.255.255.255)

我听不到广播的消息255.255.255.255。该ARTNET协议文档说,ARTNET控制器广播到255.255.255.255端口6454(也可参见这里。

当我尝试255.255.255.255使用node.js的dgram模块进行侦听时,我得到一个“ EINVAL”错误,因为这255.255.255.255是一个无效的地址。

我试着订阅192.255.255.255,192.168.255.255以及192.168.10.255(代替255.255.255.255)。这些都不起作用。在Windows和Ubuntu上测试。

const dgram = require('dgram');

const sock = dgram.createSocket('udp4', (msg, peer) => { console.log(msg, peer); });

sock.bind(6454, () => { sock.addMembership('255.255.255.255'); }); 堆栈跟踪:

dgram.js:581 throw errnoException(err, 'addMembership'); ^

Error: addMembership EINVAL at Socket.addMembership (dgram.js:581:11) at Socket.sock.bind (/home/kyle/temptest/listen3.js:15:8) at Object.onceWrapper (events.js:286:20) at Socket.emit (events.js:198:13) at startListening (dgram.js:128:10) at state.handle.lookup (dgram.js:249:7) at process._tickCallback (internal/process/next_tick.js:63:19) at Function.Module.runMain (internal/modules/cjs/loader.js:834:11) at startup (internal/bootstrap/node.js:283:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

展开
收起
被纵养的懒猫 2019-09-29 18:05:49 675 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载