J'aimerais souligner qu'aucune de ces réponses ne répond réellement à la question ; la question porte spécifiquement sur les réponses de rendu ; par exemple, pour une application comme :
const router = require('express').Router();
router.use('/test.json', (req, res) => res.json({ test: 'hi' });
router.use('/test.html', (req, res) => res.render('test'));
La manière d'ajouter des en-têtes n'est pas claire (par exemple, les en-têtes CSP, qui peuvent être très verbeux). sólo à vos réponses HTML. Express n'a pas de crochet pour faire cela spécifiquement. La seule option pour le moment est d'organiser votre code de manière à ne pas avoir à le faire, par ex.
app.use(jsonRouter);
app.use(htmlRouter);
...qui vous permet de faire ce que certaines des autres réponses suggèrent, et d'ajouter un logiciel intermédiaire générique pour définir les en-têtes.