web-dev-qa-db-fra.com

Ajouter des en-têtes personnalisés à la «demande»

Je procure mon API via la configuration suivante dans ma configuration express

  // Proxy api calls
  app.use('/api', function (req, res) {
    let url = config.API_Host + req.url
    req.pipe(request(url)).pipe(res)
  })

config.API_Host ici résout mon URL d'api et req.url est un point final, c'est-à-dire /users J'ai essayé de suivre la documentation sur npm pour demande et de configurer mes en-têtes comme ça

  // Proxy api calls
  app.use('/api', function (req, res) {
    let options = {
      url: config.API_Host + req.url,
      options: { 'mycustomheader': 'test' }
    }
    req.pipe(request(options)).pipe(res)
  })

Mais je ne peux pas voir mes en-têtes personnalisés dans chrome dev tools sous Network.

8
Ilja

A pu y parvenir de cette façon

  app.use('/api', function (req, res) {
    let url = config.API_Host + req.ur
    req.headers['someHeader'] = 'someValue'
    req.pipe(request(url)).pipe(res)
  })
13
Ilja

pour des raisons étranges, req.setHeader('someHeader', 'somValue') n'a pas fonctionné pour moi.

mais req.headers['someHeader'] = 'someValue' cela a fonctionné

0
kheengz