由于浏览器有同源策略的限制,致使咱们在本地开发的时候,请求不一样域名的接口会存在跨域的问题javascript
解决跨域的问题有不少方式,这里主要整理下代理模式来解决跨域的问题vue
代理方式可以实现的机制大致:java
本地服务器 --》 代理 --》目标服务器 --》拿到数据后经过代理假装成本地服务请求的返回值 ---》浏览器收到返回的数据webpack
vue 基于 vue init webpack my-project 构架的脚手架(https://github.com/vuejs-templates/webpack)git
在项目目录中找到根目录下config文件夹下的index.js文件 官方文件目录:https://github.com/vuejs-templates/webpack/blob/develop/template/config/index.jsgithub
能够看到 proxyTable web
关于proxyTable 是利用 http-proxy-middleware 插件来完成的api
配置代码跨域
proxyTable: {
'/api': {
target: 'http://api.xxx.com', // 目标接口域名
changeOrigin: true, // 是否跨域
pathRewrite: {
'^/api': '/' // 重写接口
}
}
},