BrowserSync 代理到两个后端端口
BrowserSync proxy to two backend ports
使用 gulp 我有:
browserSync.init({
proxy: "localhost:8080",
open: false
});
这允许我转到 http://localhost:3000 并且请求转到端口 8080 上的后端。
现在我的应用程序分为两个后端,所以我的应用程序一部分在端口 8080 上,另一部分在端口 1212 上
我如何告诉 browsersync 代理 http://localhost:3000/module1
到端口 1212 以及其他任何东西 http://localhost:3000/* 到端口 8080?
谢谢
基于此 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 (default browsersync port) are proxied to 8080, but if any path of the request starts with /api
, then it goes to http://localhost:1212/api
使用 gulp 我有:
browserSync.init({
proxy: "localhost:8080",
open: false
});
这允许我转到 http://localhost:3000 并且请求转到端口 8080 上的后端。
现在我的应用程序分为两个后端,所以我的应用程序一部分在端口 8080 上,另一部分在端口 1212 上
我如何告诉 browsersync 代理 http://localhost:3000/module1
到端口 1212 以及其他任何东西 http://localhost:3000/* 到端口 8080?
谢谢
基于此 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 (default browsersync port) are proxied to 8080, but if any path of the request starts with /api
, then it goes to http://localhost:1212/api