之前用的方法现在死活跨不过去,都快放弃,好在最后成功解决了~
1.以前使用并有效的方法
在vue.config.js里配置,具体配置位置如下:
devServer: {
port: port,
open: true,
overlay: {
warnings: false,
errors: true
},
// 新增开始,注意是proxy,不在是proxyTable
proxy: {
// 对应.env.development里的VUE_APP_BASE_API
[process.env.VUE_APP_BASE_API]: {
// 需要跨域的域名,对应.env.development里的VUE_APP_BASE_DOMAIN
target: process.env.VUE_APP_BASE_DOMAIN,
// 必须加上这个才能跨域请求,不记得当时是否测试过一定要加
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
}
}
}
// 新增结束
// before: require('./mock/mock-server.js') // 模拟数据注销掉
},
2.现在实现全局代理跨域proxy
Step1,配置.env.development
声明一个全局变量VUE_APP_BASE_DOMAIN = 'http://xxx.com' 为后台的域名
# base api
VUE_APP_BASE_API = '/wapi'
BACKGROUND_APPLICATION_URL = 'http://www.xxx.com'
Step2,配置 vue.config.js
在devServer下新建proxy对象如下,就是这么简单:
devServer: {
port: port,
open: true,
overlay: {
warnings: false,
errors: true
},
proxy: {
'/wapi': {
target: process.env.BACKGROUND_APPLICATION_URL
}
},
// 注释掉mock虚拟请求
// before: require('./mock/mock-server.js')
},
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。