在写vue项目调取接口的时候出现了跨域问题,先来说一下什么是跨域吧
跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。
所谓同源是指,域名,协议,端口均相同(这些不说了,可自行百度)
下面来说一下解决办法,在这里呢因为是vue项目我直接使用http-proxy-middleware 代理解决
下面直接修改config/index.js,在proxyTable中加入如下代码
proxyTable: {
'/api': { //使用"/api"来代替接口
target: 'http://39.105.10.194',
changeOrigin: true,//改变源
pathRewrite: {
'^/api': '/'
}
}}
使用axios请求数据时直接使用“/api”:
axios.get('/api/banner', function (res) {
console.log(res)
})
嗯 这样就完事了