详解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 相关文章推荐
jQuery的链式调用浅析
Dec 03 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 Javascript
JQuery文字列表向上滚动的代码
Nov 13 Javascript
深入理解JavaScript是如何实现继承的
Dec 12 Javascript
HTML页面登录时的JS验证方法
May 28 Javascript
jquery中push()的用法(数组添加元素)
Nov 25 Javascript
js仿腾讯QQ的web登陆界面
Aug 19 Javascript
js简单正则验证汉字英文及下划线的方法
Nov 28 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
Sep 28 Javascript
详解javascript 变量提升(Hoisting)
Mar 12 Javascript
纯js实现无缝滚动功能代码实例
Feb 21 Javascript
javascript 代码是如何被压缩的示例代码
May 06 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
php array_pop()数组函数将数组最后一个单元弹出(出栈)
2011/07/12 PHP
PHP获取MySQL执行sql语句的查询时间方法
2018/08/21 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
jQuery编辑器KindEditor4.1.4代码高亮显示设置教程
2013/03/01 Javascript
如何使Chrome控制台支持多行js模式——意外发现
2013/06/13 Javascript
jQuery中大家不太了解的几个方法
2015/03/04 Javascript
jQuery读取XML文件内容的方法
2015/03/09 Javascript
基于javascript实现样式清新图片轮播特效
2016/03/30 Javascript
深入浅析JavaScript中数据共享和数据传递
2016/04/25 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
JS动态添加元素及绑定事件造成程序重复执行解决
2017/12/07 Javascript
JS运动特效之链式运动分析
2018/01/24 Javascript
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
详解python的数字类型变量与其方法
2016/11/20 Python
利用Python爬取微博数据生成词云图片实例代码
2017/08/31 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
Python3之不使用第三方变量,实现交换两个变量的值
2019/06/26 Python
Python使用GitPython操作Git版本库的方法
2020/02/29 Python
python3 logging日志封装实例
2020/04/08 Python
python+adb+monkey实现Rom稳定性测试详解
2020/04/23 Python
使用pyecharts1.7进行简单的可视化大全
2020/05/17 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
python爬虫线程池案例详解(梨视频短视频爬取)
2021/02/20 Python
UNDONE手表官网:世界领先的定制手表品牌
2018/11/13 全球购物
自我评价200字分享
2013/12/17 职场文书
《最大的麦穗》教学反思
2014/04/17 职场文书
模具专业求职信
2014/06/26 职场文书
学校节能宣传周活动总结
2014/07/09 职场文书
KTV门卫岗位职责
2014/10/09 职场文书
公路局群众路线教育实践活动第一阶段工作汇报
2014/10/25 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
Matplotlib可视化之添加让统计图变得简单易懂的注释
2021/06/11 Python
MYSQL 的10大经典优化案例场景实战
2021/09/14 MySQL
Python中的pprint模块
2021/11/27 Python
德劲DE1105机评
2022/04/05 无线电
Python识别花卉种类鉴定网络热门植物并自动整理分类
2022/04/08 Python