微信小程序不同环境下如何动态切换后端请求地址
经过打印 __wxConfig.envVersion
可以得出以下结论
开发 | 体验版(测试) | 线上 |
---|---|---|
develop | trial | release |
那么我们写一个switch 语句就可以动态切换了
//app.js
App({
onLaunch: function (cb) {
console.log(__wxConfig);
const version = __wxConfig.envVersion;
switch (version) {
// 开发
case 'develop':
this.globalData.host= 'https://dev.hzzy.xyz',
this.globalData.apihost= 'https://dev.hzzy.xyz/api'
break;
// 测试
case 'trial':
this.globalData.host= 'https://uat.hzzy.xyz',
this.globalData.apihost= 'https://uat.hzzy.xyz/api'
break;
// 线上
case 'release':
this.globalData.host= 'https://hzzy.xyz',
this.globalData.apihost= 'https://hzzy.xyz/api'
break;
default:
this.globalData.host= 'https://dev.hzzy.xyz',
this.globalData.apihost= 'https://dev.hzzy.xyz/api'
break;
}
globalData: {
userInfo: null,
host: '',
apihost: ''
}
})
使用
// pages中引入全局变量
var app = getApp()
wx.request({
url: app.globalData.apihost + 'test',
method: 'POST',
data: {},
header: {
'content-type': 'application/json'
},
success: function (res) {}
})
即可通过app.globalData访问不同环境下的url