vue项目接口地址暴露_vue项目打包后可以配置接口地址的方法
因为项目测试的需要,我需要给测试人员一个项目的测试环境版本和生产环境版本,两个版本的区别就是请求的接口地址不一样而已,一开始,我是在webpack配置了不同的命令,让测试去打包,比如:使用npm run test 打包测试版本,使用npm run build打包生产环境的版本,可是测试嫌麻烦,说让弄成配置文件形式的 ,直接改配置文件就可以改接口地址的那种。
想了一阵子没想到方法,同事过来看了看说,,把接口地址挂载window全局对象下面不就行了,在同事 的点拨下,瞬间知道该咋做了,,好吧,是我想的太复杂了
简单的做法:
1.在项目根目录下的static文件夹下新建一个config.js(因为static文件夹下的东西在执行打包的时候会复制到打包后的目录里),在里边写:
window.serverAPI={
url:"http://www.xxx.com",
timeout:5000
}
2.在入口index.html 里 引入config.js
3.在项目中配置axios就可以这样:
let http = axios.create({
baseURL: window.serverAPI.url,
timeout: window.serverAPI.timeout
});
然后 测试 拿去用的话 就可以自己去改config.js里的url 来改接口地址啦
第二种方法(推荐)(20190530更新):
将接口配置成json 并将api.json文件放在static文件夹下:
{
"onlineServer": {
"enabled": "true",
"name": "onlineServer",
"api": "http://www.xxx.com"
},
"testServer": {
"enabled": "false",
"name": "testServer",
"api": "http://xxx.xxx.xx.xx"
}
}
上方是我定义的格式 ,onlineServer是线上接口的配置,testServer是测试服务器的配置,程序里边 通过enabled属性来判断使用哪个配置.
在vue入口文件 (一般就是main.js),先去获取 api.json ,获取到后再去实例化Vue,代码如下:
const loadApiConfig = new Promise((resolve, reject) => {
let o = require('../static/api.json');
if (o){
resolve(o);
}else {
reject("api获取失败")
}
});
loadApiConfig.then(res=>{
let apiConfig = {};
for (let p in res) {
if (res.hasOwnProperty(p)) {
//判断 enabled 是true 就使用这个配置
if (res[p].enabled === "true") {
apiConfig = res[p];
}
}
}
console.log(apiConfig);
console.log("获取api成功");
//创建一个axios实例 配置刚刚获取的到api 地址等 参数 并挂载到Vue原型链上 在组件中就可以 用this.$http 去请求数据了
Vue.prototype.$http = axios.create({
baseURL: apiConfig.api,
timeout: apiConfig.timeout,
headers: {
"Content-Type": "application/json"
}
});
// 实例化vue
new Vue({
el: '#app',
router,
components: {App},
template: ''
});
}).catch(e =>{
console.error(e)
})
3+
1.如需转载本站原创文章,请务必注明文章出处并附上链接,非常感谢。
2.本站用于记录个人 工作、学习、生活,非商业网站,更多信息请 点击这里
“vue项目打包后可以配置接口地址的方法” 有 2 条评论
我的config/index.js里面有一个地址,那个地方需不需要进行修改
0
什么地址,,,
0
发表评论电子邮件地址不会被公开。
评论
姓名
电子邮件
站点
vue项目接口地址暴露_vue项目打包后可以配置接口地址的方法相关推荐
- vue项目打包后生成一个配置文件可以修改打包后的服务器api地址
vue项目打包后生成一个配置文件可以修改打包后的服务器api地址 问题描述:vue项目打包上线之后,如果要改服务器api地址,只能在源码更改然后重新打包发布,为了解决这个问题,我们可以在static增 ...
- vue项目打包后 修改配置
前言 在使用vue.js开发前端项目时,再结合webpack搞起各种依赖.各种插件进行开发,无疑给前端开发带来了很多便捷,就在解决跨域这个问题上,相信众多用vue.js的前端同僚们同我一样尝到了甜头, ...
- win10电脑自动配置ipv4地址169怎么办?win10电脑关闭自动配置ipv4地址的方法
win10电脑自动配置ipv4地址169怎么办?win10电脑关闭自动配置ipv4地址的方法 具体的解决方法如下: 1.打开小娜搜索,输入cmd,然后选择命令提示符右击以管理员身份运行. 2.输入:n ...
- vue 如何调用微信分享_Vue项目通过JSSDK调用微信分享接口
最近在做一个公司微信分享项目的功能,毕竟第一次做,对于小白也是个挑战,特此记录一下自己的开发过程,以便以后查阅.(转载请标明出处,码字好辛苦的qaq) 使用步骤: 1.绑定域名: 一开始当然是去查微信 ...
- vue项目打包后直接修改ip地址
在 Vue 项目的配置文件中可以设置 devServer.host 属性来指定开发服务器的主机名.打包后的项目文件中并不包含该配置,所以需要使用其他方式来修改 IP 地址. 一种方法是在本地的 hos ...
- vue中使用pdf.js插件打包后不显示插件及打包后动态修改接口地址
最近写了一个项目 需要在线展示pdf 实现方法是下载该插件并解压放到 static文件夹中 地址:http://mozilla.github.io/pdf.js/ 我在项目中使用iframe嵌套的方式 ...
- 配置vue打包后可以更改接口地址
有时候我们会遇到这种情况,项目开发完打包后,安排其他同事需要去客户现场集成,我们在去之前也不知道客户的服务器地址,这时候就可以把接口地址配置成打包后也可以更改,这样会方便许多,下面是具体流程: 1. ...
- vue添加html开启服务器_Vue 项目(HTML5 History 模式) 部署服务器
相信很多小伙伴在用Vue-cli安装的脚手架开发的时候,在开发环境中项目可以很正常的运行,但是进入到生产环境,编译打包后,放入服务器,项目就不正常了,会出现空白页或者路由跳转404等问题.遇到这些问题 ...
- vue使用ts 引入组件_vue项目中使用ts(typescript)入门教程
最近项目需要将原vue项目结合ts的使用进行改造,这个后面应该是中大型项目的发展趋势,看到一篇不错的入门教程,结合它并进行了一点拓展记录之.本文从安装到vue组件编写进行了说明,适合入门. 1.引入T ...
最新文章
- 如何理解jdk8通过行为参数化传递代码
- 2021届图像/计算机视觉算法提前批的面经 | 附内推码
- 基于matlab的退化图像复原(三)------维纳滤波复原
- 成为表情包大帝,仅需几十行python代码,简单易学
- 调查报告:工人们并不担心将来会被AI取代
- 软件构建之链接应用--链接脚本
- winform 转 JAVA_C#转java
- python极客项目编程_Python极客项目编程 ([美]Mahesh Venkitachalam) 中文pdf完整版
- P7115-[NOIP2020]移球游戏【构造】
- 表单和iframe的使用
- java八大基本类型介绍
- maven命令mvn package指定jar包名称
- 休闲娱乐的计算机配置,入门APU主机配置 1199元双核APU家用娱乐电脑配置推荐
- License for package Android SDK Build-Tools 28.0.3 not accepted.
- 使用宝塔面板部署node.js后台:koa2+mysql+vue
- OneNote for win10防止英文自动切换字体工具
- 流量不清零:为何让三运营商的垄断越走越紧
- 汉字风格迁移篇--KAGAN:一种中国诗歌风格转换的方法
- 如何做数据分析报告?
- 【字符串处理函数】sprintf与snprintf