web-dev-qa-db-fra.com

Différence entre res.setHeader et res.header dans node.js

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.

15
Subham

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.

33
Zagonine

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"
  });
10
Ghafoor
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.

0