vue axios 解决跨域

1 安装axios

修改配置文件

  cnpm install axios
  cnpm install --save axios vue-axios
  • 1 在main.js中加入

import Axios from 'axios'
import VueAxios from 'vue-axios' 
Vue.use(VueAxios,Axios);

Vue.prototype.$axios = Axios
Axios.defaults.baseURL = '/api'
Axios.defaults.headers.post['Content-Type'] = 'application/json';
  • 2 在config/index.js中加入

proxyTable: {
  '/api':{
        target: "https://xxx.com", // 你请求的第三方接口
        changeOrigin:true,// 在本地会创建一个虚拟服务端,然后发送请求的数据,并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题
         // ws:true,//是否代理websockets
        pathRewrite:{// 路径重写,
            '^/api':''// 替换target中的请求地址,也就是说以后你在请求http://api.douban.com/v2/XXXXX这个地址的时候直接写成/api即可。
        }
    }
},
  • 3调用

this.$axios.post('/xxx.json',{}).then((res)=>{
          console.log(res)
      }).catch((res)=>{
          console.log(res)
      })

你可能感兴趣的:(vue axios 解决跨域)