详解基于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 相关文章推荐
IE/FireFox具备兼容性的拖动代码
Aug 13 Javascript
JS查看对象功能代码
Apr 25 Javascript
javascript基本语法分析说明
Jun 15 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
May 24 Javascript
判断是否安装flash player及当前版本的JS代码
Aug 08 Javascript
JS.elementGetStyle(element, style)应用示例
Sep 24 Javascript
Extjs改变树节点的勾选状态点击按钮将复选框去掉
Nov 14 Javascript
JavaScript中的变量作用域介绍
Dec 31 Javascript
jquery实现两个图片渐变切换效果的方法
Jun 25 Javascript
理解 JavaScript Scoping & Hoisting(二)
Nov 18 Javascript
js时间戳与日期格式之间转换详解
Dec 11 Javascript
js+css实现打字效果
Jun 24 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
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
PHP基于回溯算法解决n皇后问题的方法示例
2017/11/07 PHP
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
javascript中用星号表示预录入内容的实现代码
2011/01/08 Javascript
javascript动画浅析
2012/08/30 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
基于jQuery倒计时插件实现团购秒杀效果
2016/05/13 Javascript
JS快速实现移动端拼图游戏
2016/09/05 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
帮你彻底搞懂JS中的prototype、__proto__与constructor(图解)
2019/08/23 Javascript
JS 数组基本用法入门示例解析
2020/01/16 Javascript
Node.js API详解之 readline模块用法详解
2020/05/22 Javascript
[04:40]DOTA2-DPC中国联赛1月26日Recap集锦
2021/03/11 DOTA
python list语法学习(带例子)
2013/11/01 Python
Python3遍历目录树实现方法
2015/05/22 Python
解决Python中字符串和数字拼接报错的方法
2016/10/23 Python
python常用知识梳理(必看篇)
2017/03/23 Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
2018/03/19 Python
python 读取txt中每行数据,并且保存到excel中的实例
2018/04/29 Python
Numpy数据类型转换astype,dtype的方法
2018/06/09 Python
keras 两种训练模型方式详解fit和fit_generator(节省内存)
2020/07/03 Python
Proenza Schouler官方网站:纽约女装和配饰品牌
2019/01/03 全球购物
Servlet的实例是在生命周期什么时候创建的?配置servlet最重要的是什么?
2012/05/30 面试题
大学专科生推荐信范文
2013/11/23 职场文书
电厂厂长岗位职责
2014/01/02 职场文书
销售个人求职信范文
2014/04/28 职场文书
车辆工程专业求职信
2014/04/28 职场文书
餐饮服务食品安全责任书
2014/07/25 职场文书
反腐倡廉警示教育活动心得体会
2014/09/04 职场文书
运动会报道稿300字
2014/10/02 职场文书
车间班组长竞聘书
2015/09/15 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python
tomcat正常启动但网页却无法访问的几种解决方法
2022/05/06 Servers