我试图使用电子应用中的node.js dgram包发送udp数据包。 send方法调用Buffer,Uint8Array或string。我尝试使用Buffer或UintArray时遇到类型错误。确切的错误是:TypeError:第一个参数必须是缓冲区或字符串。
我可以在Node.js dgram代码中看到它正在使用!(buffer instanceof Buffer
检查缓冲区。如果我在我的代码中尝试在缓冲区上使用instanceof,它只返回对象作为类型,而如果我尝试' Buffer.isBuffer()'它返回true。我已经尝试了节点为创建缓冲区buffer而没有结果的所有方法。发送确实接受字符串,但后来我遇到了编码的各种问题,这感觉有点像hacky。
看起来电子正在运行节点7.4.0。
我从这里看到我的选择:
有什么想法吗?
答案 0 :(得分:1)
为了使其工作,我只需将我的全局缓冲区值指向节点缓冲区模块,如下所示:const Buffer = window.require('buffer').Buffer