详解基于Vue-cli搭建的项目如何和后台交互


Posted in Javascript onJune 29, 2018

这段时间在折腾有vue做开发,之前也用过,但是大部分都是用一些简单的数据绑定。踏了很多坑,总结了一下,希望对刚刚开始折腾的小伙伴有帮助。

常见问题一:用vue-cli搭好环境以后,本地域名和测试环境的域名不一致,怎么跨域访问后台接口?

在config目录下找到index.js,在dev下添加如下:

proxyTable: {
  '/api':{//指定以/api开头的接口都走代理
   target:'https://yhhdtest.moguyun.com',//需要连接后台接口的域名
   changeOrigin:true,//支持跨域
   pathRewrite:{
    '/api':''
   }
  }
 },

以上的配置其实是dev-server 使用了非常强大的 http-proxy-middleware 包。更多高级用法,请查阅其文档。

请求/api/getGame实际发出去的请求是 https://yhhdtest.moguyun.com/getGame

配置一个适用于本地和生产环境的后台请求

按照上面的配置好以后,本地环境可以成功的跨域和后台交互了。但是每个接口前面都要加一个原本不需要的/api前缀,这个其实和我们生产是不符合的。这个时候需要我们做一些配置,通过编译来区分。

在index.js下分别找到dev和prod(有的项目可能直接抽出来,单独成文件了)

dev.env.js

module.exports = merge(prodEnv, {
 NODE_ENV: '"development"',
 API_HOST:'"/api/"'
})

prod.env.js

module.exports = {
 NODE_ENV: '"production"',
 API_HOST:'""'
}

关键点在于API_HOST,这个时候我们的请求可以这么写

process.env.API_HOST+'/getGame'

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

Javascript 相关文章推荐
JavaScrip单线程引擎工作原理分析
Sep 04 Javascript
jquery动画效果学习笔记(8种效果)
Nov 13 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 Javascript
JS中事件冒泡和事件捕获介绍
Dec 13 Javascript
WebPack基础知识详解
Jan 16 Javascript
JS组件系列之MVVM组件 vue 30分钟搞定前端增删改查
Apr 28 Javascript
学习使用Bootstrap页面排版样式
May 11 Javascript
Node.js安装详细步骤教程(Windows版)详解
Sep 01 Javascript
JavaScript实现像雪花一样的Hexaflake分形
Jul 07 Javascript
JS实现炫酷雪花飘落效果
Aug 19 Javascript
vue+swiper实现左右滑动的测试题功能
Oct 30 Javascript
关于element的表单组件整理笔记
Feb 05 Javascript
jQuery实现模糊搜索功能的方法分析
Jun 29 #jQuery
微信小程序中进行地图导航功能的实现方法
Jun 29 #Javascript
Vue表单demo v-model双向绑定问题
Jun 29 #Javascript
vue底部加载更多的实例代码
Jun 29 #Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
Jun 29 #Javascript
vue项目打包后打开页面空白解决办法
Jun 29 #Javascript
详解Vue webapp项目通过HBulider打包原生APP
Jun 29 #Javascript
You might like
分享php邮件管理器源码
2016/01/06 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
漂亮的仿flash菜单,来自蓝色经典
2006/06/26 Javascript
jquery插件之easing 动态菜单
2010/08/21 Javascript
写js时遇到的一些小问题
2010/12/06 Javascript
一个简单的弹性返回顶部JS代码实现介绍
2013/06/09 Javascript
JS防止用户多次提交的简单代码
2013/08/01 Javascript
JS 操作Array数组的方法及属性实例解析
2014/01/08 Javascript
Document.location.href和.replace的区别示例介绍
2014/03/04 Javascript
使用js判断TextBox控件值改变然后出发事件
2014/03/07 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
深入理解requestAnimationFrame的动画循环
2016/09/20 Javascript
AngularJS Phonecat实例讲解
2016/11/21 Javascript
Bootstrap Search Suggest使用例子
2016/12/21 Javascript
js实现3d悬浮效果
2017/02/16 Javascript
JS实现颜色动态淡化效果
2017/03/06 Javascript
JS获取指定月份的天数两种实现方法
2018/06/22 Javascript
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
2019/01/09 jQuery
[00:32]2018DOTA2亚洲邀请赛出场——LGD
2018/04/04 DOTA
Python列表(list)常用操作方法小结
2015/02/02 Python
python抓取网页中图片并保存到本地
2015/12/01 Python
Python实现脚本锁功能(同时只能执行一个脚本)
2017/05/10 Python
Numpy中转置transpose、T和swapaxes的实例讲解
2018/04/17 Python
Python学习_几种存取xls/xlsx文件的方法总结
2018/05/03 Python
对Tensorflow中权值和feature map的可视化详解
2018/06/14 Python
pytorch中的inference使用实例
2020/02/20 Python
python2.7使用scapy发送syn实例
2020/05/05 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
纯css3实现照片墙效果
2014/12/26 HTML / CSS
Europcar比利时:租车
2019/08/26 全球购物
好矿嫂事迹材料
2014/01/21 职场文书
借款担保书范文
2014/05/13 职场文书
四风问题查摆材料
2014/08/25 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
MySQL的索引你了解吗
2022/03/13 MySQL