vite 在proxy代理中更改headers
平时我们在对接接口时,我们都是配置代理解决跨域问题
proxy: {
'^/api': {
target: envConfig.VITE_APP_BASE_URL,
changeOrigin: true,
rewrite: (path) => path.replace(/^/api/, ''),
}
}
某天你明明配置好了代理,浏览器还是会有跨域问题报错
查看response header, 你会发现
Access-Control-Allow-Origin: *, *
这里Access-Control-Allow-Origin
不单是一个*
google后可以确定是这个请求头被设置了2次*
和后端反馈后,很久啥也没查出来,就是解决不了
那前端要怎么做呢?
思路1
在项目中重启一个node服务,再做一次转发,在转发的过程中重写这个response header解决跨域问题
1.安装一个express
2.安装cors中间件
3.安装http-proxy-middleware进行代理转发
这里转发的时候不能说直接都转发了,你会发现还是有问题
const { createProxyMiddleware, responseInterceptor } = require('http-proxy-middleware');
const proxy &