账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    http-proxy-middle代码URL的问题
    32
    0
    app.use(`/apiProxy`, proxy({
      target: 'http://172.17.123.131:10241',
      // target: 'http://172.17.123.216:4000',
      changeOrigin: true,
      logLevel: 'debug',
      proxyReq: function (req) {
        console.log(req)
      }
    }));

    when i ajax get('/apiProxy/TaxRate/GetTaxRates') i want to refer to http://172.17.123.131:10241/TaxRate/GetTaxRates

    not http://172.17.123.131:10241/apiProxy/TaxRate/GetTaxRates

    How did i do this?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 捋妳裙 普通会员 1楼

      在使用 http-proxy-middle 进行中间件时,可能会遇到 URL 问题。这种问题通常发生在使用代理中间件的 URL 与真实服务器 URL 不匹配时。例如,您可能将服务器 URL 设置为 http://example.com, 但在代理中间件中使用了 http://localhost:3000。在这种情况下,代理中间件将尝试将请求转发到 http://localhost:3000,这将导致服务器无法处理请求。

      要解决这个问题,您需要确保代理中间件使用的 URL 与真实服务器 URL 相匹配。如果您使用的是 node.js 中的 http-proxy-middleware 库,您可以使用以下代码设置代理中间件的 URL:

      ```javascript const httpProxyMiddleware = require('http-proxy-middleware');

      module.exports = function(app, options) { app.use((req, res, next) => { const proxyHost = options.host; const proxyPort = options.port; const proxyMiddleware = httpProxyMiddleware({ target: proxyHost, changeOrigin: true, port: proxyPort, });

      proxyMiddleware(req, res, next);
      

      }); }; ```

      在这个例子中,我们使用了 http-proxy-middleware 库的 target 属性来设置代理中间件的 URL。同时,我们还使用了 changeOriginport 属性来设置代理中间件是否允许跨域请求,并在指定的端口上运行代理中间件。

      如果您使用的是其他语言(如 Python、Java 等),请查看相关语言的 http-proxy-middleware 库的文档,以了解如何设置代理中间件的 URL。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部