Node.js: creare una pagina di errore 404 con Express

In Node.js è semplice implementare una pagina di errore 404 con Express.

Si tratta di intercettare tutte le richieste non gestite dalle nostre route e di restituire una pagina specifica usando il template engine che abbiamo scelto (Jade, EJS, ecc.). L'ordine delle route è sempre rilevante: mettere all'inizio il codice che segue equivale a mostrare un errore 404 su tutte le pagine.


// Dopo tutte le altre route

app.get('*', function(req, res, next) {
    var err = new Error();
    err.status = 404;
    next(err);
});

app.use(function(err, req, res, next) {
    if (err.status === 404) {
        var data = {
            title: '404 Not Found',
            content: 'Oops, page not found!';
        };
        res.render('pages/404', data);
    } else {
        return next();
    }
});

Torna su