如何处理ECONNRESET,通过对等方重置连接

Swi*_*ler 14 javascript node.js

我的很多node.js进程都因ECONNRESET错误而崩溃.这是我可以看到的输出:

node.js:50
    throw e;
    ^
Error: ECONNRESET, Connection reset by peer
    at Client._readImpl (net:320:14)
    at IOWatcher.callback (net:470:24)
    at node.js:607:9
Run Code Online (Sandbox Code Playgroud)

有谁知道如何处理这个?它不是一个非常有用的堆栈跟踪,所以我不知道它在哪里发生.我应该通过带有try/catch块的http来包装对远程源的任何和所有访问吗?或者,还有更好的方法?

一般来说,我不在乎这是否确实发生过,或者由于这个原因,某些任务没有完成.我所关心的是,这个过程应该耸耸肩,然后继续完成下一个任务.

kan*_*aka 15

您需要附加到套接字的错误事件.如果不这样做,则默认操作是在发生错误时抛出异常.

socket.on('error', function (exc) {
    sys.log("ignoring exception: " + exc);
});
Run Code Online (Sandbox Code Playgroud)