Ho un codice come questo che renderà un modello di giada senza un percorso definito. Pensa a questo come express.static ma chiama res.render con l'url.Come posso rilevare un errore di rendering/modello mancante in node.js usando express.js?
app.use(function (req, res, next) {
try {
res.render(req.url.substring(1), { title: "No Controller", user: req.session.user });
} catch (err) {
console.log(err)
next();
}
});
Il problema è che res.render() non sta generando un errore. Invece sta visualizzando una pagina di errore. C'è un modo per rilevare un modello mancante o errori di rendering?
Grande scoperta. È solo in 3.x doc, ma funziona anche in 2.x. – respectTheCode
Risposta aggiornata per usare 'res.send' invece di' res.end'. 4.x documentazione [stati specifici] (http://expressjs.com/api.html#res.end) "Se è necessario rispondere con i dati, utilizzare metodi come res.send()" –
Ho pensato che sarebbe genera un 404 se si è verificato un errore nell'elaborazione del modello, ma non sembra. Qualcuno si preoccupa di spiegare perché non lo fa? –