微信小程序云开发报错

微信小程序云开发报错

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

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来操作了,这个功能的使用场景还是收紧了。不过对于我们来说充充充能解决的问题都解决不了。还是要尽量可这一个用吧。

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

相关推荐
腾马科技8 小时前
新版saas餐饮外卖小程序源码/微信/支付宝/抖音/扫码点餐/DIY装修/美团代付/全开源
微信小程序·小程序·点餐小程序
郑叔敲代码12 小时前
帝国cms 微信小程序的登录逻辑
微信小程序·小程序·notepad++
棋子一名16 小时前
跑马灯组件 Vue2/Vue3/uni-app/微信小程序
微信小程序·小程序·uni-app·vue·js
无衣 秦风17 小时前
vue3+hubuilderX开发微信小程序使用elliptic生成ECDH密钥对遇到的问题
微信小程序·小程序
明天你好26718 小时前
如何做一个花店小程序,搭建一个小程序多少钱
微信小程序·小程序·模拟退火算法
江城开朗的豌豆19 小时前
小程序登录不迷路:一篇文章搞定用户身份验证
前端·javascript·微信小程序
江城开朗的豌豆20 小时前
我的小程序登录优化记:从短信验证到“一键获取”手机号
前端·javascript·微信小程序
Stanford_11061 天前
如何利用Python进行数据分析与可视化的具体操作指南
开发语言·c++·python·微信小程序·微信公众平台·twitter·微信开放平台
知识分享小能手1 天前
微信小程序入门学习教程,从入门到精通,微信小程序核心 API 详解与案例(13)
前端·javascript·学习·react.js·微信小程序·小程序·vue
Terio_my1 天前
微信小程序开发从零基础到项目发布的全流程实战教程(四)
微信小程序·小程序