devServer代理跨域问题
发布于 3个月前 作者 zkxil 556 次浏览 来自 问答
粉丝福利 : 关注VUE中文社区公众号,回复视频领取粉丝福利

求助, 我配置的代理如下:

devServer: { port:8100, proxy: { "/api": { target: "http://xxx.xx.xx.xx:50078",// 代理的url ws: true,// 是否启用websockets changeOrigin: true, //开启代理:在本地会创建一个虚拟服务端,然后发送请求的数据,并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题 pathRewrite: { //替换掉开头的/api '^/api’: ‘’ //这里理解成用’/api’代替target里面的地址,比如我要调用’http://40.00.100.100:3002/user/add’,直接写’/api/user/add’即可 } } } }, 使用axios.get(‘/api/resource’)请求时 查看network访问的地址变成了’/resource’,而真正能访问代理的url应该是’/api/resource’。 我对于pathRewrite的理解是 发送请求到代理服务后再去掉/api,而现在的情况是发送到代理前就替换/api了,困惑中。。。 望各位大神不吝赐教。

1 回复

发起请求 => 代理服务器 => 服务器

你现在的实现也正是这样的, 没毛病, 正是因为到了代理服务器, 你的network 地址才没有/api

回到顶部