基于 vue-cli 的反向代理设置及 axios 获取 json 数据
vue-cli 反向代理设置
反向代理用来解决前端跨域问题,设置很简单,在 vue-cli 项目的 config 文件夹 index.js 文件下进行如下设置即可:
proxyTable: {
// 代理规则
'/api': { // 配置的url请求名字开头
target: 'http://10.18.110.107',
//target: 'http://10.18.110.107/api'
// https请求需要该设置
secure: false,
// 开启代理:在本地会创建一个虚拟服务端,然后发送请求的数据,
// 必须设置该项
changeOrigin: true,
pathRewrite: {
"^/api": "" //这里理解成用 “/api”代替target里面的地址,后面组件中我们调接口是直接用api代替
//比如我要调用 ‘http:、、40.00.100.100:1001:3000/user/info’ 直接写成 ‘/api/user/info’}
}
}
配置完成重新运行dev,即可请求数据
axios.get('/api/tasktime')
.then(function (res) {
console.log(res)
})
http请求本来是axios.get(‘http://10.18.110.107/tasktime’,{params:{num:12})
就可以写成axios.get(‘/api/tasktime’,{params:{num:12}) 实现跨域
在main.js中可以配置全局axios
注意:一般都需要重新运行
如果代理发出去的地址不正确 请求报错400 或404 需要在终端运行npm start 重新启用npm run dev
.
.
.