在哪里捕获此错误?

时间:2012-02-21 23:34:53

标签: exception node.js error-handling express

我正在使用expressjs

我创建了这样的应用程序:

app.createServer(
  express.cookieParser(),
  express.bodyParser(),
  myfunc1(),
  myfunc2()
);

在myfunc1中,我返回下一个(错误)的某些条件。 (例如req.query包含一些奇怪的字符)。

所以,如果发生这种情况(下一个(错误)),它只是简单地返回http响应500.我尝试使用以下方法来捕获错误:

app.error(....)  or
process.on("uncaughtexception" ... );

但错误不会同时发生。他的错误在哪里?

1 个答案:

答案 0 :(得分:0)

快速指南中已经很好地介绍了这一点:

app.use(express.errorHandler({ showStack: true, dumpExceptions: true }));

这将捕获错误并为您提供错误屏幕(对于大多数例外情况)。该指南讨论了如何处理404,500等:

http://expressjs.com/guide.html#error-handling

快乐的编码!