Quelle est la difference entre res.setHeader et res.header. Lequel devrait être utilisé pour activer CORS? Res.header est utilisé sur certaines pages et res.setHeader est utilisé pour CORS.
res.setHeader()
est une méthode native de Node.js et res.header()
est un alias de la méthode res.set()
du framework Express.
Documentation:
res.setHeader()
,res.set()
Ces deux méthodes font exactement la même chose, définissez la réponse HTTP des en-têtes. La seule différence est que res.setHeader()
vous permet uniquement de définir un en-tête singulier et res.header()
vous permettra de définir plusieurs en-têtes . Utilisez donc celui qui correspond à vos besoins.
Peut-être qu'un exemple peut clarifier davantage:
// single field is set
res.setHeader('content-type', 'application/json');
// multiple files can be set
res.set({
'content-type': 'application/json',
'content-length': '100',
'warning': "with content type charset encoding will be added by default"
});
app.use((req, res, next) => {
res.setHeader("Access-Control-Allow-Origin", "*");
res.setHeader(
"Access-Control-Allow-Headers",
"Origin, X-Requested-With, Content-Type, Accept"
);
res.setHeader(
"Access-Control-Allow-Methods",
"GET, POST, PATCH, DELETE, OPTIONS"
);
next();
});
J'utilise ce code pour mes projets de pile moyenne.