Study
Express.js

Error Handling Middleware

Penjelasan

Error handling middleware dikenali Express dari JUMLAH ARGUMENnya yang PERSIS 4 (err, req, res, next) — beda dari middleware biasa yang cuma 3. Didaftarkan PALING TERAKHIR (setelah semua route lain), berfungsi menangkap error dari mana pun asalnya (dilempar lewat next(err) atau throw di dalam middleware/handler).

Contoh Konsep

app.get('/error-contoh', (req, res, next) => {
    const error = new Error('Terjadi kesalahan!');
    next(error); // meneruskan error ke error handling middleware
});

// WAJIB didaftarkan PALING TERAKHIR, setelah semua route lain
app.use((err, req, res, next) => {
    console.error(err.message);
    res.status(500).json({ error: err.message });
});

Praktikum

Buat error handling middleware (4 argumen) yang mencatat err.message ke console dan merespons res.status(500).json({error: 'Terjadi kesalahan server'}). Pastikan didaftarkan paling terakhir di file.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Express HANYA mengenali sebuah middleware sebagai error handler kalau parameternya PERSIS 4 (err, req, res, next) — kalau kamu hapus salah satu parameter yang tidak dipakai (mis. next), Express justru menganggapnya middleware BIASA dan tidak akan pernah dipanggil untuk menangani error.