Node.js:未处理的 'error' 事件

标签 node.js

我的 Node.js 应用程序出现错误:

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: read ECONNRESET
    at errnoException (net.js:905:11)
    at TCP.onread (net.js:559:19)

我认为我可以通过在某个对象上调用 .on('error', function () {...}) 来捕获此错误,但如何找出哪个对象?

最佳答案

这是您的 TCP 连接之一,但您是对的,由于事件循环的堆栈跟踪很短,因此弄清楚它可能是一个谜。即使这样,中间库也可能无法方便地访问作为错误源的实际连接实例。如果您只是想捕获错误,process.onUncaughtException 将为您提供最后的手段来执行此操作。您可能还想尝试域,看看它们是否至少可以帮助您追踪来源(因为它们将为您维护因果链)。 npm 上还有一些长堆栈跟踪模块可能会有所帮助。

您可能还必须开始将程序分成更小的部分,以隔离所涉及的子系统。

关于Node.js:未处理的 'error' 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33963634/

相关文章:

node.js - 由于权限,npm install 未在 Ubuntu 上安装递归依赖项

node.js - 使用 node.js 改造现有的 Backbone 应用程序以进行服务器端渲染?

javascript - 如何在json数组对象中添加<a> HTML标签

node.js - 如何使用 Node.js 完成/终止 Mocha/Istanbul 测试周期

node.js - updateMany()之后如何获取所有更新文档的值?

javascript - Sequelize 模型关联不会创建新列

node.js - 为什么docker-compose env_file不起作用,而环境却起作用?

javascript - 我无法使用可选字符串和参数创建路由路径 - ExpressJS

javascript - array.indexOf 与函数匹配?

javascript - 如何在 express.js node.js 中设置 X-Frame-Options