【问题标题】:write ECONNRESET error and socket connection checking in node.js在 node.js 中编写 ECONNRESET 错误和套接字连接检查
【发布时间】:2012-09-06 01:58:06
【问题描述】:

我在运行 node.js 脚本时偶尔会收到此错误。

events.js:66
        throw arguments[1]; // Unhandled 'error' event
                       ^
Error: write ECONNRESET
    at errnoException (net.js:768:11)
    at Object.afterWrite (net.js:592:19)

是什么导致了这个错误?我在某个地方读到这是由于尝试将数据写入关闭的套接字而引起的。 对吗?

如果是这种情况,如何检查套接字连接是否处于活动状态? 我发现了这个 SO 问题here,但没有人在那里回答。

第三,是一个简单的在 socket.write 语句周围的 try catch,足以处理这个错误吗?或者它会发出我必须处理的错误事件?

【问题讨论】:

  • 检查是完全没有意义的。即使您检查时它很好,但当您尝试写入时它仍然可能失败。
  • 哦.. 最后一个问题呢?只是一个 try..catch 处理它吗?
  • 我相信是这样,但是我对node.js不是很熟悉,所以我没有回答。
  • 当我的服务器尝试写入已关闭的套接字连接时,我遇到了同样的错误。并且 try/catch 无法抓住异常。 (我正在使用节点 v0.10.8)
  • 我只是使用了一个 process.on 来处理未处理的异常。 process.on('uncaughtException', function(e) { console.log(e.stack); });

标签: javascript sockets node.js error-handling socket.io


【解决方案1】:

我们已经通过 http-proxy 看到了它,并在此处报告了该问题:https://github.com/nodejitsu/node-http-proxy/issues/331

如果没有处理“错误”(并且只有“错误”)事件,nodejs 会抛出。

【讨论】:

    猜你喜欢
    • 2014-06-24
    • 2013-09-12
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    相关资源
    最近更新 更多