欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue跨域配置

程序员文章站 2022-07-09 20:23:19
...

一.什么是跨域
当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域
vue跨域配置
二.解决方式: ProxyTable

proxyTable的底层使用了http-proxy-iddleware(https://github.com/chimurai/http-proxy-middleware),它是http代理中间件,它依赖node.js,基本原理是用服务端代理解决浏览器跨域:

vue跨域配置
三.实例中具体实现:
1.Main.js添加一行:

Vue.prototype.HOME = '/api'

vue跨域配置
2.index.js第14行proxyTable:{}大括号中添加如下:

'/api': { // 接口配置代理,解决跨域
target: 'http://xzishiying.yuezhix.com/', 
secure: false, // false为http访问,true为https访问
changeOrigin: true, // 跨域访问设置,true代表跨域
pathRewrite: { // 路径改写规则
'^/api': '' // 以/proxy/为开头的改写为''
}
}

vue跨域配置
3.调不同域名接口测试

this.$axios({
method:'get',
url:this.HOME+'/workbench/subject'
}).then((response) =>{ //这里使用了ES6的语法
console.log(response) //请求成功返回的数据
}).catch((error) =>{
console.log(error) //请求失败返回的数据
})

控制台里的效果:
vue跨域配置

相关标签: web前端