详解基于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 相关文章推荐
JavaScript在多浏览器下for循环的使用方法
Nov 07 Javascript
JS使用for循环遍历Table的所有单元格内容
Aug 21 Javascript
javascript下拉列表菜单的实现方法
Nov 18 Javascript
JS实现的倒计时效果实例(2则实例)
Dec 23 Javascript
浅谈javascript中关于日期和时间的基础知识
Jul 13 Javascript
JS实现字符串转驼峰格式的方法
Dec 16 Javascript
原生js验证简洁注册登录页面
Dec 17 Javascript
JS实现的简单拖拽功能示例
Mar 13 Javascript
简单实现js拖拽效果
Jul 25 Javascript
jQuery实现轮播图及其原理详解
Apr 12 jQuery
在微信小程序中使用图表的方法示例
Apr 25 Javascript
javascript中可能用得到的全部的排序算法
Mar 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
上海牌131型七灯四波段四喇叭一级收音机
2021/03/02 无线电
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
2011/05/02 PHP
phpstorm编辑器乱码问题解决
2014/12/01 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
PHP微信红包生成代码分享
2016/10/06 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
php数组函数array_push()、array_pop()及array_shift()简单用法示例
2020/01/26 PHP
JavaScript中Object和Function的关系小结
2009/09/26 Javascript
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
2010/04/13 Javascript
jQuery实现带延迟的二级tab切换下拉列表效果
2015/09/01 Javascript
Jquery attr()方法 属性赋值和属性获取详解
2016/04/15 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
2016/06/09 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
vue2 如何实现div contenteditable=“true”(类似于v-model)的效果
2017/02/08 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
2018/02/06 Javascript
vue bus全局事件中心简单Demo详解
2018/02/26 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
vue 遮罩层阻止默认滚动事件操作
2020/07/28 Javascript
Python实现的百度站长自动URL提交小工具
2014/06/27 Python
Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
2017/08/08 Python
Python 反转字符串(reverse)的方法小结
2018/02/20 Python
python 中Arduino串口传输数据到电脑并保存至excel表格
2019/10/14 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
html5 css3实例教程 一款html5和css3实现的小机器人走路动画
2014/10/20 HTML / CSS
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
JavaScript获取当前url根目录(路径)
2014/02/19 面试题
高中生毕业自我鉴定范文
2013/12/22 职场文书
中学生运动会入场词
2014/02/12 职场文书
成人继续教育实施方案
2014/03/01 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
2014年乡镇人大工作总结
2014/11/25 职场文书
银行自荐信范文
2015/03/25 职场文书
2015年度绩效考核工作总结
2015/05/27 职场文书
Python基础之条件语句详解
2021/06/16 Python