微信小程序云开发报错

微信小程序云开发报错

起因是云开发报了个错误:

bash 复制代码
fail: Error: cloud.callFunction:fail Error: errCode: -501000  | errMsg: [100003] env not exists (f8c78dea-9f77-43cf-9e7f-88c85f2a0795) (callId: 1701747734223-0.895078767368265) (trace: 11:42:14 start->11:42:14 system error (Error: errCode: -501000  | errMsg: [100003] env not exists (f8c78dea-9f77-43cf-9e7f-88c85f2a0795)), abort)
at N (WASubContext.js?t=wechat&s=1701739226681&v=2.25.1:1)
at WASubContext.js?t=wechat&s=1701739226681&v=2.25.1:1

解决办法

不过想了半天,这玩意为啥会报错呢,而且看上去就是云环境不存在,这不奇怪了吗。翻了翻 f8c78dea-9f77-43cf-9e7f-88c85f2a0795 这种东西在云开发里边好像也没有,可能在那个日志收集里边有吧,不过那个要单独收费,还是不尝试了。

分析了半天突然想起来,这个是不是跟当前的云环境使用的是共享环境有关。看了一眼,嗯。。。未配置环境。

赶紧又打开了云开发面板。

我的环境为空,虽然说已经创建共享了,但是我的环境默认还是空的。感觉此处应该有一个神奇的配置。先翻翻文档去吧。

经过来回来去反复跳转之后发现了这么个文档

里边有一句话 如果是跨账号环境共享的场景(使用其他微信云开发的资源),必须使用 new wx.cloud.Cloud 新建实例使用。

那么好了应该就是这里出的问题了。按照文档上的示例代码。

js 复制代码
const a = new wx.cloud.Cloud({
  resourceEnv: 'a',
  traceUser: true,
})
await a.init()

// 可以调用云开发 API 访问云资源了,如
const res = await a.callFunction({
  name: 'test',
  data: {
    // ...
  },
})

仿佛还是不行,有看了看其他的问题,发现她这个里边好像还能有另外一个参数 resourceAppid

js 复制代码
const a = new wx.cloud.Cloud({
  resourceEnv: 'a',
  resourceAppid: 'wxa', // 主环境的小程序ID
  traceUser: true,
})
await a.init()

// 可以调用云开发 API 访问云资源了,如
const res = await a.callFunction({
  name: 'test',
  data: {
    // ...
  },
})

这样终于可以了,然后想部署一下试试吧,嗯。。。好像在当前被共享环境的小程序上还推不上去。。。嗯。。。然后,换成主环境小程序成功了。

思考

当前的情况是小程序A的开发环境共享给了小程序B,当小程序B需要使用A的云开发环境的时候,就不能像小程序A那样直接使用了,需要使用新建的环境来调用云函数。 而且现在小程序B也不能直接部署云函数了,都必须要通过小程序A来操作了,这个功能的使用场景还是收紧了。不过对于我们来说充充充能解决的问题都解决不了。还是要尽量可这一个用吧。

不过小程序云开发的这个部署也是真的是有点随意,手残还是很容易导致线上事故的。 翻了翻发现了个版本控制,感觉上线的时候先新建一个版本,然后把流量都放到那个版本上,后续再上线再修改流量使用版本,这样操作比较稳妥。

相关推荐
小小怪下士_---_14 小时前
uniapp开发微信小程序自定义导航栏
前端·vue.js·微信小程序·小程序·uni-app
摸着石头过河的石头15 小时前
小程序调试全攻略:微信/支付宝避坑指南,小白也能一次通关
前端·微信小程序
Dignity_呱1 天前
如何在不发版时,实现小程序的 AB 测试?
前端·面试·微信小程序
咸虾米_2 天前
微信小程序通过uni.chooseLocation打开地图选择位置,相关设置及可能出现的问题
微信小程序·小程序·uniapp开发·小程序地图api
不如摸鱼去3 天前
Trae 辅助下的 uni-app 跨端小程序工程化开发实践分享
微信小程序·小程序·uni-app·aigc·ai编程
意会3 天前
微信闪照小程序实现
前端·css·微信小程序
小白_ysf3 天前
uniapp 开发微信小程序,获取经纬度并且转化详细地址(单独封装版本)
微信小程序·uni-app
是一碗螺丝粉4 天前
拯救你的app/小程序审核!一套完美避开审核封禁的URL黑名单机制
前端·javascript·微信小程序
我叫黑大帅5 天前
微信小程序分包:告别加载慢,像拆快递一样简单!
前端·微信小程序
两个月菜鸟5 天前
vue+微信小程序 五角星
前端·vue.js·微信小程序