为了解决跨域问题,在vue3-vite项目中,需要在vite.config.ts文件中设置代理,格式如下:
export default defineConfig({
...,
server:{
proxy:{
'/api':{
target:"http://localhost:xxxx",
changeOrigin:true,
rewrite:(path)=>path.replace(/^\/api/,"")
},
}
},
})
这样设置之后就能够在开发环境中访问此地址的api了。
然而在npm run build后,线上访问出现了问题。
那肯定是nginx出现了问题,仔细一番查找,发现在nginx中少了代理,格式如下:
location /api {
http://localhost:xxxx;
}