vue 动态修改后端请求_vue中服务器端直接修改请求的接口地址

  • Post author:
  • Post category:vue


一个项目可能有很多环境,开发,测试,预生产,生产等环境,如果每一个环境都需要重新打包会显得比较麻烦,那么如何解决这个问题呢

在vue和uniapp中以及其他框架下的都是可以按照如下操作来解决的

在静态资源下新建一个env.json,vue项目是在public文件下新建,uniapp是在static下新建文件

文件格式如下

{

“name”: “development”,

“base”: “/customer”

}

name,代表的是环境,方便直接在服务器上查看当前是什么环境的,base是请求的地址,如果服务器没有做代理的话,这里的base应该是完整的请求地址http:// xxxxx.com/customer,类似这种

一般人在处理的时候总是获取不到这个env.json里的地址,是因为,这里是因为异步导致的,如果要解决的话,可以在main.js或者是main.ts中如何操作

axios.get(‘./env.json’)

.then(function (res: any) {

// handle success

Vue.prototype.BASE_URL = res.data.base;

new Vue({

router,

store,

render: h => h(App)

}).$mount(‘#app’)

})

这样有个问题就是一定是在请求



版权声明:本文为weixin_27872611原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。