详解vue-cli 接口代理配置


Posted in Javascript onDecember 13, 2017

本文介绍了vue-cli 接口代理配置,分享给大家,具体如下:

一些同学在配置接口代理时,会有疑问 我配置成功了为什么接口还是不通 ,其实代理已经成功 只是 接口访问地址规则没搞清楚

下面以本地测试为栗子 向大家介绍

一些基本操作这里就不介绍了

找到vue-cli config 文件夹下的 index.js  这是是配置接口规则的文件 同目录下建立 proxyConfig.js  一些同学习惯直接在原文件修改 ,也是可以但推荐使用新建文件的方式:

module.exports = {
  proxyList: {
    '/api': {
      target: 'http://localhost:3000',  (这里是代理接口的位置)
      changeOrigin: true,(允许跨域,如果这不写,调用接口接口时会有跨域错误说缺少请求头)
      pathRewrite: {'^/api': '' } (路由规则下面详细介绍)
    }
  }
}

******路由规则*******

上述代码执行之后,意思就是 只要在接口中看到‘/api‘ 会自动变成我们设置的地址,那么我们在设置的时候可以规范接口书写标准 就用到了这个属性 pathRewrite 路径重写{'^/api': '' } 是指你想让路由变成什么样子 ,如果是空 那么在解析时 如果我们的接口写的是 $http.get('/api/good') 那么在服务端我们将会看到 /good的访问,如果此时在服务端并没有相应的路由匹配,客服端就会显示报错,端口号还是客户端的端口号,所以很多同学就错觉没有起作用 ,同理如果我们设置{'^/api': '/api' } 那么在服务端将会看到/api/goods 的接口访问,意思就是不仅将/api自动解析成代理地址,还会作为服务端的路由展示。

另外在设置路由规则注意分隔符/  有些同学喜欢这样写 target: 'http://localhost:3000/', 自己写端口后面加上一个分隔符,会发现路由对不上,这时你需要在命名的时候也要加上‘/' 路由规则也要加上‘/' 接口才能对,不然 会发现请求接口的时候多了一个分隔符 如:'/api//goods'。

设置完之后,在index.js 里面 引入 proxyConfig.js,设置 proxyTable 完成设置

const proxyConfig = require('./proxyConfig')
module.exports = {
  dev: {
    env: require('./dev.env'),
    host: 'localhost',
    port: 8188,
    autoOpenBrowser: true,
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: proxyConfig.proxyList,
    cssSourceMap: false,
  }
 }

请求时 这样写

axios.get('/api/goods').then((res)=>{console.log(res.data);}}).catch((err)=>{console.log(err);}})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
TFDN图片播放器 不错自动播放
Oct 03 Javascript
javascript 弹出窗口中是否显示地址栏的实现代码
Apr 14 Javascript
Javascript中自动切换焦点实现代码
Dec 15 Javascript
教你如何使用node.js制作代理服务器
Nov 26 Javascript
Javascript优化技巧之短路表达式详细介绍
Mar 27 Javascript
简介JavaScript中Math.cos()余弦方法的使用
Jun 15 Javascript
jQuery CSS3自定义美化Checkbox实现代码
May 12 Javascript
javaScript语法总结
Nov 25 Javascript
bootstrap滚动监控器使用方法解析
Jan 13 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
Jan 06 Javascript
微信小程序实现动态列表项的顺序加载动画
Jul 25 Javascript
用js实现放大镜效果
Oct 28 Javascript
vue项目总结之文件夹结构配置详解
Dec 13 #Javascript
vue.js简单配置axios的方法详解
Dec 13 #Javascript
关于Vue单页面骨架屏实践记录
Dec 13 #Javascript
JS实现利用两个队列表示一个栈的方法
Dec 13 #Javascript
node vue项目开发之前后端分离实战记录
Dec 13 #Javascript
详解vue-cli快速构建vue应用并实现webpack打包
Dec 13 #Javascript
Angularjs过滤器实现动态搜索与排序功能示例
Dec 13 #Javascript
You might like
短波收音机简介
2021/03/01 无线电
PHP判断是否连接上网络的方法
2015/07/01 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
JS+JSP checkBox 全选具体实现
2014/01/02 Javascript
$.each与$().each的区别示例介绍
2014/03/20 Javascript
javascript插件开发的一些感想和心得
2016/02/28 Javascript
vue动态组件实现选项卡切换效果
2017/03/08 Javascript
js仿微信公众平台打标签功能
2017/04/08 Javascript
jQuery修改DOM结构_动力节点Java学院整理
2017/07/05 jQuery
详解Js中的模块化是如何实现的
2017/10/18 Javascript
vue两个组件间值的传递或修改方式
2018/07/04 Javascript
js实现左右两侧浮动广告
2018/07/09 Javascript
JS实现图片上传多次上传同一张不生效的处理方法
2018/08/06 Javascript
浅谈HTTP 缓存的那些事儿
2018/10/17 Javascript
详解小程序中h5页面onShow实现及跨页面通信方案
2019/05/30 Javascript
JS中循环遍历数组的四种方式总结
2021/01/23 Javascript
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
python计算圆周长、面积、球体体积并画出圆
2014/04/08 Python
一个检测OpenSSL心脏出血漏洞的Python脚本分享
2014/04/10 Python
python各种语言间时间的转化实现代码
2016/03/23 Python
使用C++扩展Python的功能详解
2018/01/12 Python
Python通过cv2读取多个USB摄像头
2019/08/28 Python
Django高并发负载均衡实现原理详解
2020/04/04 Python
利用Python如何实时检测自身内存占用
2020/05/09 Python
python快速安装OpenCV的步骤记录
2021/02/22 Python
CSS3.0实现霓虹灯按钮动画特效的示例代码
2021/01/12 HTML / CSS
Lookfantastic香港官网:英国知名美妆购物网站
2018/06/19 全球购物
世界上第一个创建了罩杯系统的美国内衣品牌:Maidenform
2019/03/23 全球购物
师范生自荐信范文
2013/10/06 职场文书
税务干部鉴定材料
2014/02/11 职场文书
五四青年节优秀演讲稿范文
2014/05/28 职场文书
企业金融服务方案
2014/06/03 职场文书
2014年派出所工作总结
2014/11/21 职场文书
2014年煤矿安全工作总结
2014/12/04 职场文书
北京爱情故事观后感
2015/06/12 职场文书
初三数学教学反思
2016/02/17 职场文书