我正在尝试使用 node-opcua 包在 nw.js 中创建一个 OPCUA 客户端。我在 client.connect 函数中遇到错误。它说没有 socket.write 功能。由于我使用的是最新的 nw.js 和 node.js 11.6,它应该在那里,就像它在API中描述的那样。
我只是使用示例客户端代码连接套接字对象并将其记录到控制台。实际上没有“写”功能。只有具有不同参数的“ _write ”函数可用。
我的测试连接代码(嵌套到异步中):
var testConnect = function(cb){
client.connect(endpointUrl, function (err) {
if(err) {
console.log(" cannot connect to endpoint :" , endpointUrl );
} else {
console.log("connected !");
}
cb(err);
});
}
在node_modules\node-opcua-transport\src\tcp_transport.js中引发错误的代码:
TCP_transport.prototype._write_chunk = function (message_chunk) {
if (this._socket) {
this.bytesWritten += message_chunk.length;
this.chunkWrittenCount ++;
console.log(this._socket);
this._socket.write(message_chunk); <--- This throws the error
}
};
结果客户端永远不会连接,并且会永远尝试它,或者直到达到 maxRetry 选项值。
有什么想法吗?