tech.chakapoko.com
Home / Node.js / Express

[Node.js][Express]デフォルトのエラーハンドラを設定する

Expressデフォルトのエラーハンドラを設定するには、ルーティングの定義の後ろで app.use に関数を渡します。

次のコードはコンソールにエラーログを吐き、レスポンスとしては500エラーを返します。

const express = require('express');

const app = express();

app.get('/', (req, res) => {
    throw new Error('error!');
});

app.use((err, req, res, next) => {
    console.error(err.stack);
    res.status(500).send('Internal Server Error');
});

app.listen('3000', () => {
    console.log('Application started');
});
$ curl http://localhost:3000
Internal Server Error