我正在使用 RoutingProxy 类(在 http-proxy 包中找到)来代理我的节点应用程序中的某些请求。但是,我在向目标路径添加前缀时遇到了困难。例如,我正在尝试代理http://localhost:8080/stylesheets/main.css
到http://172.30.6.11:51161/mysite/stylesheets/main.css
.
这是我正在尝试做的一个愚蠢的例子:
// controllers/proxy.js
var httpProxy = require('http-proxy');
exports.request = function(options){
var proxy = new httpProxy.RoutingProxy();
return function(req, res){
req.url = '/mysite' + req.url;
proxy.proxyRequest(req, res, options);
};
};
// app.js
// ...
var controllers = require('./controllers');
app.use(controllers.proxy.request({
target: {
host: '172.30.6.11',
port: 55161
}
});
// ...
不幸的是,调用目标时从未添加前缀。有没有人知道我如何才能做到这一点?