Tengo un código como este que renderizará una plantilla de jade sin una ruta definida. Piense en esto como el express.static pero llama a res.render con la url.¿Cómo puedo detectar un error de representación/plantilla faltante en 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();
}
});
El problema es que res.render() no está arrojando un error. En cambio, está representando una página de error. ¿Hay alguna forma de detectar una plantilla faltante o algún error de representación?
Great find. Está solo en documentos 3.x pero funciona en 2.x también. – respectTheCode
Respuesta actualizada para usar 'res.send' en lugar de' res.end'. 4.x documentación [especifica estados] (http://expressjs.com/api.html#res.end) "Si necesita responder con datos, utilice métodos como res.send()" –
. Pensé que esto generar un 404 si hubo un error al procesar la plantilla, pero parece que no. ¿Alguien quiere explicar por qué no? –