1.前言
vite项目,本地开发环境可以通过配置proxy代理实现跨域请求。但是生产环境,该配置不生效,一般使用 nginx 转发,或者后端配置cors
2.解释
server: {
port: 9000,
proxy: { // 本地开发环境通过代理实现跨域,生产环境使用 nginx 转发
// 正则表达式写法
'^/api': {
target: 'http://xxxx/xx'// 后端服务实际地址
changeOrigin: true, //开启代理
// path是请求方法request.js中配置的baseUr中除去协议+域名+端口剩下的部分。例如,下图中的例子,这里的path就是/api
rewrite: (path) => path.replace(/^\/api/, '') // 路径重写
}
}
}
注意:最终的请求地址是 target + (rewrite重写的地址
3.图解: