Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在nodejs中一段时间后强制关闭连接_Javascript_Node.js_Sockets_Httprequest - Fatal编程技术网

Javascript 在nodejs中一段时间后强制关闭连接

Javascript 在nodejs中一段时间后强制关闭连接,javascript,node.js,sockets,httprequest,Javascript,Node.js,Sockets,Httprequest,我有一个用户http.request,用于连接nodejs中的另一台服务器。不幸的是,在某些情况下,服务器的响应会延迟。所以我想在一段时间后关闭请求。 我发现了以下代码,但如果无法访问目标服务器或尚未建立连接,则会导致此紧密连接 req.on('socket', function (socket) { socket.setTimeout(myTimeout); socket.on('timeout', function() { req.abort();

我有一个用户
http.request
,用于连接nodejs中的另一台服务器。不幸的是,在某些情况下,服务器的响应会延迟。所以我想在一段时间后关闭请求。 我发现了以下代码,但如果无法访问目标服务器或尚未建立连接,则会导致此紧密连接

req.on('socket', function (socket) {
    socket.setTimeout(myTimeout);  
    socket.on('timeout', function() {
        req.abort();
    });
});
我想要的是关闭连接后,例如2秒是否有数据来或不来


有人知道吗?

我真的不知道您使用的套接字库,也许它也有一些现成的解决方案,但是使用
setTimeout
函数看起来很简单:

req.on('socket', function (socket) {
    setTimeout(function() {
        // maybe some additional condition here
        // or recursive call if you want to wait 2 more seconds
        // or whatever else
        // but if you want to just abort...
        req.abort();
    }, 2000);
});
再说一次,这看起来像是一个解决办法,但我从你的要求中了解到,这肯定足够了