vue axios 给生产环境和发布环境配置不同的接口地址(推荐)


Posted in Javascript onMay 08, 2018

本项目是vue-cli搭建的项目框架,引入axios用于数据请求。配置不同的接口地址,(首先确保已经集成了axios,如对集成axios有疑问的道友,可参看我之间的一篇vue-cli 引入axios)操作如下

一、设置不同的接口地址

找到如下文件

/config/dev.env.js

/config/prod.env.js

之后增加接口地址域名配置,增加后的文件内容如下

vue axios 给生产环境和发布环境配置不同的接口地址(推荐)

vue axios 给生产环境和发布环境配置不同的接口地址(推荐)

二、在自己重新封装的axios文件中(api/api.js),将配置好的接口地址作为baseURL拼接到接口路径中

vue axios 给生产环境和发布环境配置不同的接口地址(推荐)

详细的api.js文件可参考如下代码,根据自己公司项目组编码习惯可自作调整

// 配置API接口地址 
var root = process.env.API 
// 引用axios 
var axios = require('axios') 
// 自定义判断元素类型JS 
function toType (obj) { 
 return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase() 
} 
// 参数过滤函数 
function filterNull (o) { 
 for (var key in o) { 
 if (o[key] === null) { 
  delete o[key] 
 } 
 if (toType(o[key]) === 'string') { 
  o[key] = o[key].trim() 
 } else if (toType(o[key]) === 'object') { 
  o[key] = filterNull(o[key]) 
 } else if (toType(o[key]) === 'array') { 
  o[key] = filterNull(o[key]) 
 } 
 } 
 return o 
} 
function apiAxios (method, url, params, success, failure) { 
 if (params) { 
 params = filterNull(params) 
 } 
 axios({ 
 method: method, 
 url: url, 
 data: method === 'POST' ? params : null, 
 params: method === 'GET' ? params : null, 
 baseURL: root, 
 withCredentials: false 
 }) 
 .then(function (res) { 
 console.log(res); 
 return; 
 if (res.data.success === true) { 
  if (success) { 
  success(res.data) 
  } 
 } else { 
  if (failure) { 
  failure(res.data) 
  } else { 
  window.alert('error: ' + JSON.stringify(res.data)) 
  } 
 } 
 }) 
 .catch(function (err) { 
 let res = err.response 
 if (err) { 
  window.alert('api error, HTTP CODE: ' + res.status) 
  return 
 } 
 }) 
} 
// 返回在vue模板中的调用接口 
export default { 
 get: function (url, params, success, failure) { 
 return apiAxios('GET', url, params, success, failure) 
 }, 
 post: function (url, params, success, failure) { 
 return apiAxios('POST', url, params, success, failure) 
 } 
}

三、修改main.js,引入自己重新封装好的axios文件(api/api.js),修改好的文件如下图所示

vue axios 给生产环境和发布环境配置不同的接口地址(推荐)

四、在页面中调用,测试是否生效,开发环境调通后,build之后查看正式环境是否也生效

直接调用ajax请求

export default {  
 created(){ 
  this.$http.post('Web/test',null, res => { 
  console.log(res) 
  }) 
 } 
}

总结

以上所述是小编给大家介绍的vue axios 给生产环境和发布环境配置不同的接口地址,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
从零开始学习jQuery (三) 管理jQuery包装集
Feb 23 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
Mar 28 Javascript
jquery复选框多选赋值给文本框的方法
Jan 27 Javascript
14款经典网页图片和文字特效的jQuery插件-前端开发必备
Aug 25 Javascript
js简单判断flash是否加载完成的方法
Jun 21 Javascript
checkbox批量选中,获取选中项的值的简单实例
Jun 28 Javascript
angularJS Provider、factory、service详解及实例代码
Sep 21 Javascript
通过JS获取Request.QueryString()参数的值实现方法
Sep 27 Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
Dec 13 Javascript
JavaScript订单操作小程序完整版
Jun 23 Javascript
vue 页面回退mounted函数不执行的解决方案
Jul 26 Javascript
vue 扩展现有组件的操作
Aug 14 Javascript
JavaScript实现计算圆周率到小数点后100位的方法示例
May 08 #Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
May 08 #Javascript
详解基于mpvue的小程序markdown适配解决方案
May 08 #Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
May 08 #Javascript
浅谈React 服务器端渲染的使用
May 08 #Javascript
vue.js做一个简单的编辑菜谱功能
May 08 #Javascript
webstorm和.vue中es6语法报错的解决方法
May 08 #Javascript
You might like
PHP数据库连接mysql与mysqli对比分析
2016/01/04 PHP
通过JAVAScript实现页面自适应
2007/01/19 Javascript
W3C Group的JavaScript1.8 新特性介绍
2009/05/19 Javascript
Jquery中获取iframe的代码
2011/01/11 Javascript
JS代码放在head和body中的区别分析
2011/12/01 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
JS运动框架之分享侧边栏动画实例
2015/03/03 Javascript
Bootstrap每天必学之模态框(Modal)插件
2016/04/26 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
微信小程序 for 循环详解
2016/10/09 Javascript
详解Vue-基本标签和自定义控件
2017/03/24 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
node学习笔记之读写文件与开启第一个web服务器操作示例
2019/05/29 Javascript
JS通过ajax + 多列布局 + 自动加载实现瀑布流效果
2019/05/30 Javascript
JavaScript实现烟花绽放动画效果
2020/08/04 Javascript
python实现清屏的方法
2015/04/30 Python
Python内置函数reversed()用法分析
2018/03/20 Python
python使用MQTT给硬件传输图片的实现方法
2019/05/05 Python
通过python扫描二维码/条形码并打印数据
2019/11/14 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
加拿大户外探险购物网站:SAIL
2020/06/27 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
大学生个人总结的自我评价
2013/10/05 职场文书
预备党员转正思想汇报
2014/01/12 职场文书
2014年五四青年节演讲稿范文
2014/04/22 职场文书
节约用水的口号
2014/06/20 职场文书
学习礼仪心得体会
2014/09/01 职场文书
实习推荐信格式模板
2015/03/27 职场文书
遗嘱范文
2015/08/07 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
golang中的空接口使用详解
2021/03/30 Python
CSS3 制作的彩虹按钮样式
2021/04/11 HTML / CSS
mysql数据库隔离级别详解
2022/06/16 MySQL