vue2.0跨域解决方案(前端)

前端解决:

1.配置BaseUrl

import axios from 'axios'

Vue.prototype.$axios = axios

axios.defaults.baseURL = '/api'  //关键代码

Vue.config.productionTip = false

关键代码:axios.defaults.baseURL = '/api',作用是我们每次发送的请求都会带一个/api的前缀。

2.配置代理

在config文件夹下的index.js文件中的proxyTable字段中,如下处理:

dev: {

env: require('./dev.env'),

port: 8090,//端口号自行定义

autoOpenBrowser: true,

assetsSubDirectory: 'static',

assetsPublicPath: '/',

proxyTable: {

'/api': {

target:'http://xx.xx.com/v2', // 你请求的第三方接口

changeOrigin:true, // 在本地会创建一个虚拟服务端,然后发送请求的数据,并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题

pathRewrite:{  // 路径重写,

'^/api': ''  // 替换target中的请求地址,也就是说以后你在请求http://xx.xx.com/v2/ 这个地址的时候直接写成/api即可。

}

}

},

cssSourceMap: false

}

你可能感兴趣的:(vue2.0跨域解决方案(前端))