vue
跨域问题
vue3.0中 (两种方式都可以)
在项目主目录下,新建vue.config.js文件
如果项目运行时,地址为: 运行地址/admin/
需要添加: publicPath: ‘/admin/’, outputDir: ‘dist/admin/’
如:调用登录接口 /admin/api/v2/user_login
module.exports = {
publicPath: '/admin/',
outputDir: 'dist/admin/',
devServer: {
open: true,
host: '0.0.0.0',
port: 8080,
https: false,
proxy: {
'/admin/api': {
target: '项目部署的域名地址',
// target: 'http://192.168.199.107:5001/admin/api',
ws: true,
changOrigin: true,
pathRewrite: {
'^/admin/api': ''
}
}
}
}
}
如果项目运行时,地址为: 运行地址/
需要添加: publicPath: ‘./’
如:调登录接口 /api/v1/login
module.exports = {
publicPath: './',
devServer: {
proxy: "项目部署的域名地址"
}
}
在main.js中
if (process.env.NODE_ENV === 'development') {
'开发环境下使用的地址'
// axios.defaults.baseURL = 'http://127.0.0.1:5000'
} else {
'项目上线后使用的地址'
axios.defaults.baseURL = '项目部署的域名地址'
}
axios.defaults.withCredentials = true