【发布时间】:2023-04-04 15:31:01
【问题描述】:
为了了解 TCP keepalive(我们将称之为 keepalive) 确实如此,您只需要读取名称:keep TCP 活。这意味着您将能够检查连接的套接字 (也称为 TCP 套接字),并判断连接是否 仍在运行或如果已损坏。
那么为什么当互联网连接中断时,下面的代码没有抛出任何东西?
var tls = require('tls');
var socket = tls.connect(443, "google.com", function connected() {
console.log('connected');
});
socket.setNoDelay(true);
socket.setKeepAlive(true, 0);
socket.setTimeout(0, function(){
console.log('timeout');
});
socket.on('data', function(data) {
console.log(data);
});
socket.on('close', function() {
console.error("close");
});
socket.on('error', function(err) {
console.error("error", err);
});
在 MacOS/Debian 上测试,使用 NodeJS v0.10.17
【问题讨论】: