1

我希望我的服务器充当客户端和另一台服务器之间的中间件,问题是目标服务器有一个动态子域,每次随机更改

我已经尝试过 http-proxy-middleware,它适用于非动态目标,但我不能做得更好

var options = {
  target: 'https://123.cdn.me', // target host
  changeOrigin: true,
  ws: true,
  pathRewrite: {
   '^/download/': '/'
  }
};

// create the proxy (without context)
var exampleProxy = proxy(options);
app.use('/download', exampleProxy);
`

我需要一种方法来代理从 x1.myserver.com 到 x1.traget_server.com 和 x2.myserver.com 到 x2.traget_server.com 的请求,其中 x1,x2 应该在运行时工作并动态添加的随机值

4

1 回答 1

0

这个问题有点老,但我有类似的问题,也许我的解决方案可以帮助别人。

var optionsLogin = {
logLevel: 'debug',
changeOrigin: true,
target: 'https://standardTarget.com',
router: async function (proxyRequest, path, req) {
    const sub= proxyRequest.headers.sub
    return 'https://' + sub + env.targetAdress
},

};

使用路由器参数,我能够重写目标点。

于 2021-09-24T16:49:17.703 回答