【问题标题】:BrowserSync proxy to two backend portsBrowserSync 代理到两个后端端口
【发布时间】:2016-08-22 23:55:36
【问题描述】:

使用 gulp 我有:

browserSync.init({
  proxy: "localhost:8080",
  open: false
});

这让我可以转到http://localhost:3000,请求会转到端口 8080 上的后端。

现在我的应用分为两个后端,所以我的应用的一部分在端口 8080 上,另一部分在端口 1212 上

我如何告诉 browsersync 代理 http://localhost:3000/module1 到端口 1212 和其他任何 http://localhost:3000/* 到端口 8080 ?

谢谢

【问题讨论】:

    标签: gulp browser-sync


    【解决方案1】:

    基于此answer,我能够进行一些小改动并使用以下方法解决了此问题:

      var url = require('url');
      var proxy = require('proxy-middleware');
      var proxyOptions = url.parse('http://localhost:1212/api');
      proxyOptions.route = '/api';
      browserSync.init({
        proxy: {
            target: "localhost:8080",
            middleware: proxy(proxyOptions)
        },
        open: false
      });
    

    这意味着所有去往http://localhost:3000(默认browsersync端口)的请求都被代理到8080,但是如果请求的任何路径以/api开头,那么它会转到http://localhost:1212/api

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-04
      • 2021-11-04
      • 2021-03-02
      • 2017-02-26
      • 2013-03-18
      • 2013-02-10
      相关资源
      最近更新 更多