小编los*_*der的帖子

Node.js tcp套接字关闭触发器

我使用 node.js 和 NET 类来连接多个 Rasperry Pi。

//Server
const net = require('node:net');
const server = net.createServer();

//Client
const tcpConnect = net.createConnection(SERVERINFO);
Run Code Online (Sandbox Code Playgroud)

因此我可以轻松注册多个客户端、打开/关闭流。一切正常,没有任何问题。

但现在我注意到回调。

tcpConnect.on('end', () => { console.log('end triggered') });
tcpConnect.on('close', () => { console.log('close triggered') });
tcpConnect.on('error', () => { console.log('error triggered') });
Run Code Online (Sandbox Code Playgroud)

如果服务器突然断电(例如电源被拔掉),则无法工作。客户端不会触发错误/结束或关闭,因此我无法正确关闭连接。因此,直到下次尝试向现有流写入内容时才会触发错误。但这对我来说不是一个选择,特别是对于“在线监控”。

有谁知道如何立即识别服务器关闭?

javascript sockets error-handling tcp node.js

6
推荐指数
1
解决办法
221
查看次数

标签 统计

error-handling ×1

javascript ×1

node.js ×1

sockets ×1

tcp ×1