我正在使用此模块执行以下操作:
我正在尝试使用以下代码:
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代理实现此目的?
答案 0 :(得分:2)
proxy.on('proxyReq',...)
处理程序req
是(原始)传入请求,而proxyReq
是将发送给目标服务器的请求。您需要设置proxyReq.path
字段。