微信小程序区分开发环境、生产环境(开发版、体验版、正式版)

2021-01-24 09:51:48

参考地址 微信小程序区分开发环境、生产环境(开发版、体验版、正式版)

一、先说方法:wx.getAccountInfoSync()

获取当前帐号信息。线上小程序版本号仅支持在正式版小程序中获取,开发版和体验版中无法获取。
https://developers.weixin.qq.com/miniprogram/dev/api/open-api/account-info/wx.getAccountInfoSync.html

在之前官方没有提供判别方法,上线之前要手动修改请求的URL,现在可以根据wx.getAccountInfoSync()的返回值判断运行环境,自动配置REQUEST_URL,方法在最后。缺点是:要设置基础库版本。

这里注意一下基础库版本,如果用户微信版本更新不及时可能会报错,建议设置最低基础库。

wx.getAccountInfoSync返回值

envVersion类型

// 获取当前帐号信息const accountInfo = wx.getAccountInfoSync();// env类型export const env = accountInfo.miniProgram.envVersion;if(!evn){
  console.error("获取运行环境失败!");}const baseApi = {
  // 开发版
  develop: "https://test.domain.cn",
  // 体验版
  trial: "https://test.domain.cn",
  // 正式版
  release: "https://admin.domain.cn"};// request请求baseURLexport const baseURL = baseApi[env] + "/path";

二、利用 request header refer

第二种方法可以在服务端配置,根据refer区分做转发,具体根据服务nginx、node等自己查找方法即可。缺点是:增加转发服务器的请求压力



  • 2018-10-20 20:44:03

    RecycleView4种定位滚动方式演示

    将RecyclerView滑动到指定位置,或者检索RecyclerView的某一项(各个项的高度不确定),然后定位滚动这到一项,将它显示。 下面就讲解4种RecyclerView定位滚动

  • 2018-10-21 22:29:24

    android ScollView 嵌套 WebView 底部空白,高度无法自适应解决

    最近要做一个页面,需要 ScrollView 嵌套 WebView,怎么嵌套,怎么解决焦点和 touch 事件冲突,网上一大堆,这里就不赘述了,但是发现 WebView 从一个高度很高的网页加载一个高度很低的网页的时候,高度无法自适应了,造成底部会有一大片的空白,解决方案找到了挺多,描述一下:

  • 2018-10-24 15:24:54

    getcachedir和getexternalcachedir的区别

    应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。 大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。 这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。 如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办呢?