2012-02-21 2 views
0

Im использованием expressjsКуда уловить эту ошибку?

Я создаю приложение, как это:

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

в myfunc1, я вернусь в следующем (ERR) для некоторых условий. (например, req.query содержит некоторые странные символы).

Так что, если это произойдет (следующий (ERR)), это просто вернуть ответ HTTP 500. Я пытаюсь поймать ошибку с помощью:

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

но ошибка оленьей кожи идти ни к одному из этого. Где он ошибается?

+1

Какой код вы использовали для 'app.error (...);'? Я уверен, что это правильный способ сделать это. – loganfsmyth

ответ

0

Это покрыто довольно хорошо в руководстве Экспресс:

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

Это будет фиксировать ошибки и дать вам экран ошибки (для большинства исключений). Руководство идет о том, как обращаться с 404, 500 и т.д.:

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

Счастливый кодирования!

+0

Я уже это сделал. но я установил точку останова на app.get ('/ 500', ...) и app.error (...), но так и не дошел. странно. – murvinlai

+0

Это странно. У меня есть пример использования пользовательской части промежуточного программного обеспечения для обработки ошибок. Это работает для меня: https://github.com/JustinBeckwith/ExpressStarter –

Смежные вопросы