0

ノードアプリで特定のリクエストをプロキシするために、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
  }
});
// ...

残念ながら、ターゲットを呼び出すときにプレフィックスが追加されることはありません。どうすればこれを実現できるかについて誰か考えがありますか?

4

1 に答える 1

0

通常、はではなく、で使用http-proxyします。ただし、この問題に関する以下のコメントの回避策は次のとおりです。expresshttp.createServer

于 2013-01-18T05:44:41.100 に答える