Esta no fue la pregunta original, pero en base a los comentarios de la OP y otros, parece que el objetivo es hacer una versión parcial vía json (jsonp), que es algo que simplemente tenía que hacer.
Es bastante fácil:
app.get('/header', function (req, res)
{
res.render('partials/header', { session: req.session, layout: null }, function (err, output)
{
res.jsonp({ html: output });
});
});
Nota: En mi caso, la cabecera parcial requiere la sesión, y mi biblioteca de plantillas (express-HBS) necesita layout: null
para hacer que el parcial sin necesidad de utilizar el diseño predeterminado.
Puede llamarlo desde el código de Javascript en el cliente como cualquier otro punto final de JSONP.
Necesito cargar parcial por ajax en la respuesta de json – xrado
, ¿así que funciona? No quiero devolver una página al usuario, quiero incluir la cadena representada en una respuesta res.json(). – chovy
Sí, esto funciona. La devolución de llamada predeterminada, que es lo que habría devuelto la página al usuario, no se invoca cuando transfiere la suya. –