Node.js EconReset后重新连接到套接字的正确方法(Nodejs net.socket)
我使用本机NodejsNode.js EconReset后重新连接到套接字的正确方法(Nodejs net.socket),node.js,sockets,Node.js,Sockets,我使用本机Nodejsnet模块通过局域网与硬件设备建立套接字连接。 我已经实现了一些事件处理程序,例如,我正在收听数据事件,一切都按预期进行 const net=require('net'); 让reader=new net.Socket(); 连接(读卡器端口,读卡器IP); //一些事件处理程序,工作非常好。。。 reader.on('data',(data)=>{ //处理数据 }); reader.on('关闭',(错误)=>{ //在这里重新连接 }); 但是,当我在大约5-10分
net
模块通过局域网与硬件设备建立套接字连接。
我已经实现了一些事件处理程序,例如,我正在收听数据
事件,一切都按预期进行
const net=require('net');
让reader=new net.Socket();
连接(读卡器端口,读卡器IP);
//一些事件处理程序,工作非常好。。。
reader.on('data',(data)=>{
//处理数据
});
reader.on('关闭',(错误)=>{
//在这里重新连接
});
但是,当我在大约5-10分钟内不使用连接时(它保持空闲),它会自动关闭自己,并发出close
事件,错误如下:
read ECONNRESET
at TCP.onStreamRead (internal/stream_base_commons.js:208:20) {
errno: 'ECONNRESET',
code: 'ECONNRESET',
syscall: 'read'
}
我想在收到关闭
或错误
事件时重新建立连接。
我尝试使用阅读器.connect()
,就像我在上面捕获这些事件时所做的那样。
但是,在此之后,我不会从套接字接收任何数据
,即从不调用数据
处理程序
在这种情况下,重新连接到插座的正确方法是什么?插座在一段时间后关闭如果闲置,请尝试:@lawrencerone谢谢,先生,它解决了我的问题!请考虑将此作为答案。再次感谢!