vue2 的 axios 设置代理(跨域问题)
-
同源策略/SOP(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个IP地址,也非同源。
-
跨域:三者,只要有任何一个不一样,就会产生跨域问题
-
可以配置多个策略
-
vue2 配置文件地址:
项目/config/index.js
proxyTable: {
'/api': {
//设置调用接口域名和端口号别忘了加http
target: "http://127.0.0.1:8080",
// 改变请求的地址,相当于给一个假象,后台返回的数据产生跨域问题,浏览器不接收,这时候给他换一个来源,假定是浏览器返回的,跨域问题就没有了
changeOrigin: true,
// 重写地址,监听到请求地址有api,就进行替换
pathRewrite: {
'^/api': '/api'
}
}
},
- 接口调用
this.$http.get('/api/login').then((res) => {
if (res.flag) {
this.total = res.data.totalItems;
this.tableData = res.data.itemList;
}
});