Node.js può essere eseguito sia in modalità di sviluppo che di produzione. In Express possiamo gestire gli errori in base alle due modalità.
La differenza sta nel mostrare o meno i dettagli sull'errore:
var express = require('express');
var app = express();
// Sviluppo
if (app.get('env') === 'development') {
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: err
});
});
}
// Produzione
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: {}
});
});