簡體   English   中英

NodeJS HTTP代理-添加標頭並更新請求URL

[英]NodeJS HTTP proxy - Add a header and update the request URL

我正在使用此模塊執行以下操作:

  1. 解析請求URL
  2. 使用網址中的令牌將新標頭添加到請求中
  3. 更新實際的請求URL(從URL中刪除令牌)

我正在嘗試使用以下代碼來做到這一點:

function initializeServer(){
  var server = app.listen(5050, function () {
    var host = server.address().address
    var port = server.address().port
    logger.info('NodeJS Server listening at http://%s:%s', host, port)
  });
}

proxy.on('proxyReq', function(proxyReq, req, res, options) {
  console.log("intercepting ... ")
    proxyReq.setHeader('x-replica', '123');
    req.url = '/newurl';
});

function initializeController(){
  app.get('/myapp*', function (req, res) {
     proxy.web(req, res, { target: 'http://127.0.0.1:8081' });
  });
}

其中8081是我的測試服務器,代理服務器在5050上運行。

現在,標題設置有效,但URL設置無效。 如何使用節點HTTP代理實現此目標?

proxy.on('proxyReq',...)處理程序中, req是(原始)傳入請求,而proxyReq是將發布到目標服務器的請求。 您需要設置proxyReq.path字段。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM