如何代理使用节点使用 express-http-proxy 剥离最后的休息
How to Proxy using Node using express-http-proxy to strip final rest
在我的本地JavaScript,我想打个休息电话给
/rest/speakers
并将其代理到
http://localhost:2011/rest/speakers
我有如下代码,但不能完全按照我的意愿工作:
var proxy = require('express-http-proxy');
var app = require('express')();
app.use('/rest', proxy('localhost:2011/'));
app.listen(8081, function () {
console.log('Listening on port 8081');
});
要使代理工作,我实际上需要调用
/rest/rest/speakers
我有点明白了。似乎我正在将我的 /rest
代理到 localhost:2011
的根目录,然后我需要深入到该服务器的 /rest
。添加 /rest
到 proxy(..)
的末尾将被忽略。
尝试使用 proxyReqPathResolver 根据需要修改您的 URL。
var url = require('url'),
proxy = require('express-http-proxy');
// ... other app setup here
app.use('/rest', proxy('localhost:2011', {
proxyReqPathResolver: function(req, res) {
return '/rest/rest' + url.parse(req.url).path;
}
}));
在我的本地JavaScript,我想打个休息电话给
/rest/speakers
并将其代理到
http://localhost:2011/rest/speakers
我有如下代码,但不能完全按照我的意愿工作:
var proxy = require('express-http-proxy');
var app = require('express')();
app.use('/rest', proxy('localhost:2011/'));
app.listen(8081, function () {
console.log('Listening on port 8081');
});
要使代理工作,我实际上需要调用
/rest/rest/speakers
我有点明白了。似乎我正在将我的 /rest
代理到 localhost:2011
的根目录,然后我需要深入到该服务器的 /rest
。添加 /rest
到 proxy(..)
的末尾将被忽略。
尝试使用 proxyReqPathResolver 根据需要修改您的 URL。
var url = require('url'),
proxy = require('express-http-proxy');
// ... other app setup here
app.use('/rest', proxy('localhost:2011', {
proxyReqPathResolver: function(req, res) {
return '/rest/rest' + url.parse(req.url).path;
}
}));