我正在努力为本地和远程后端服务满足CORS 我在开发模式下运行的单个Vue应用。
我有一个本地后端在运行:
class
和运行在以下位置的远程服务:
"]"
和var myObj = {lhs: 3, rhs: 2};
var myFunc = function(){}
var myString = "This is a sample String";
var myNumber = 4;
var myArray = [2, 3, 5];
var myUndefined = undefined;
var myNull = null;
Object.prototype.toString.call(myObj); // "[object Object]"
Object.prototype.toString.call(myFunc); // "[object Function]"
Object.prototype.toString.call(myString); // "[object String]"
Object.prototype.toString.call(myNumber); // "[object Number]"
Object.prototype.toString.call(myArray); // "[object Array]"
Object.prototype.toString.call(myUndefined); // "[object Undefined]"
Object.prototype.toString.call(myNull); // "[object Null]"
配置如下:
http://localhost:8600
对本地主机服务的请求以http://service.mydomain.com/
的形式发送,路径的vue.config.js
部分被正确重写,请求成功。
但是,远程API不起作用:
module.exports = {
devServer: {
proxy: {
"^/bma": {
target: "http://localhost:8600",
changeOrigin: true,
pathRewrite: { "/bma": "" },
ws: true
},
"^/service": {
target: "https://service.mydomain.com",
changeOrigin: true,
pathRewrite: { "/service": "" }
}
}
}
};
根本没有任何代理配置(完全取消了使用http-proxy-middleware的使用)可以修复远程API,但是显然localhost API开始失败。
如果我完全删除“ ^ / service”部分,为什么请求仍被代理?为什么它的行为好像没有使用http-proxy-middleware?