アプリケーションの特定のパスからルート パスへの Express アプリを使用してプロキシをセットアップしようとしています。
http://my-domain.com/some/route --> http://another-domain:8000/
http-proxy docs ごとに複数のことを試しましたが、パス/ルーティングで壁にぶつかり続けています。プロキシしようとしているアプリの背後で認証を利用できるように、ログインしたエクスプレスアプリ内でこれを実行しようとしています。パス '/some/route' が定義されていないことを示すプロキシ アプリでエラーが発生し続けます...など。
var httpProxy = require('http-proxy');
var proxy = httpProxy.createProxyServer({});
proxy.proxyRequest(req, res, {
host:'localhost',
port:8000
});
私も試しました:
var url = 'http://localhost:8000/';
var httpProxy = require('http-proxy'),
proxy = httpProxy.createProxyServer({});
proxy.web(req,res, { target: url }, function(e) {
console.log('proxy.web callback');
console.log(e);
});
関数は呼び出しますが、急な404エラーが発生します...
可能であれば、いくつかの変数も渡したいと思います。たとえば、次のようになります。
http://my-domain.com/some/route?var1=something&var2=something --> http://another-domain:8000/?var1=something&var2=something
しかし、それが可能かどうかはわかりませんでした.proxyRequestに送信されていたので、リクエストに設定しようとしましたが、2番目のアプリケーションでそれらを見つけることができませんでした.