15小时前小编发现微信小程序用户:【YYYY】提出了一个关于“云开发云函数里跨账号环境调用云函数报错问题?”的问题,在问题中开发者YYYY对该问题做了如下阐述:
你好,我有同主体下的两个小程序A和B,每个小程序各自只创建了一个云环境,开发者工具里互相共享了云环境,各自环境里也创建了cloudbase_auth云函数,内容为官方文档里的最简易的版本。 在A和B的小程序端, 我调用另一方跨环境的云资源,都没有问题。 但在云函数端,想调用另一方跨环境的云资源,始终执行到cloud.init这一步的时候报错,这是云端测试的错误提示 Error: errCode: -501001 resource system error | errMsg: getCrossAccountToken:fail Environment not found, there is no default environment exists, please explicitly specify the environment
这是云函数最简易写法,完全参照官方文档跨账号环境一文报以上错误信息
该图片引用微信开放社区
——————————————————————————————————————————
还有一个奇怪问题,还是上面的小程序A和B跨账号环境调用相关,前几天我在调试这个问题时,另一个测试云函数里跨账号获取数据库是成功的,但同样的代码,放到今天下午云端测试执行,也是报上面红色字体的错误提示。 今天唯一的环境改动,是把A和B的互相共享解绑再重新共享。
曾经执行成功过的云函数cloud初始化相关代码如下:
该图片引用微信开放社区
这样的写法,在main函数里,执行 await c1.init() 不会报错,之后的操作能拿到对应环境里的数据库资源,但今天开始又报错了。
另外本地调试这个之前曾经成功执行过的云函数时,手动触发时,有以下错误提示
环境变量:默认环境 + 模拟:从小程序调用 / 环境变量:默认环境 + 模拟:从其他云函数调用 这两种组合报以下错误
该图片引用微信开放社区
环境变量:指定云环境env(只有一个) + 模拟:从小程序调用 执行成功
该图片引用微信开放社区
环境变量:指定云环境env(只有一个) + 模拟:从其他云函数调用 执行失败
该图片引用微信开放社区
——————————————————————————————————————–
问题总结:
- 云函数里跨账号环境调用,最简易的写法报错。小程序端却可以
- 问题1解决后,跨账号环境共享下,小程序环境A里的一个云函数里能不能即拿到A里的数据库数据,又可以拿到小程序B里的数据库数据?
微信开发者工具版本: Stable 1.05.2203070
注:以上是微信小程序开发者:”YYYY”对于本问题的一些阐述,这里做一个引用,我们将实时关注微信小程序助手对该问题提出的解决方案。
【4小时前】微信小程序技术运营专员对用户YYYY提出的云开发云函数里跨账号环境调用云函数报错问题?给予如下回复
@社区技术运营专员-娇华 试下是不是这样@的
微信官方智能小程序开源联盟对于整个行业而言是一次机遇,让所有人都有机会享受到小程序所到来的红利。另一方面,对于微信官方自身而言,智能小程序开源联盟或许是其又一次业绩腾飞的潜在动力
如果您也在使用微信小程序,请关注我们,如果您有关于微信小程序的使用问题请关注我们,如果您要找百度小程序模板、微信小程序模板请关注小程序模板网或者去微信开放社区找官方人员给予解决,相信微信官方在小程序上的发力会是一个里程碑!