vue-cli 配置proxyTable解决 axios 跨域问题,实现请求接口数据

经过配置proxyTable,可解决axios跨域问题,从而不用后台改接口,实现请求接口数据 。ios

百度了不少方法,综合了一下有如下几种:axios

第一种:跨域

在服务器配置(关键代码) 服务器

response.setHeader("Access-Control-Allow-Origin", "*");//容许其余域名访问
response.setHeader("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS" );//响应类型
response.setHeader("Access-Control-Allow-Headers","x-requested-with,content-type");//响应头设置

在main.js里面添加app

axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'post

此方法没尝试,只是总结了一下url

第二种:spa

经过配置proxyTable (项目的config文件夹下的index.js的dev: {....}里面)3d

target:‘这里写的是以http://或者https://开头的域名,如:https://www.baidu.com/ ’code

而后在main.js里面直接调用

这里我get请求访问的域名就会是https://www.baidu.com/StairClassUrl/GetColumn

注意  这里定义的全局属性baseUrl 必须和 proxyTable 里面的 pathRewrite 定义的名称一致。

若是不一致仍是会报错

而后关闭项目,重启(由于修改了config里面的文件,因此必须重启才能看效果!!!)就能成功接收到数据

只用了第二种,亲测有效

相关文章
相关标签/搜索