- 当前 Bug 的表现(可附上截图)
Error:getTcbFuncInfo fail
code: ResourceNotFound.Function message:函数不存在
按照下方网友的建议,在云开发控制台建立名为login的云函数后。
重新上传login函数,成功了!
再次尝试获取openid,但是仍然失败,显示“调用失败,请检查login云函数是否已部署”。
经过反复尝试,终于发现一个可能的原因:当前环境原来直接命名的“test",不知道是否与保留字冲突了,切换成另一个不同名的环境,重新上传,成功!
- 预期表现
正常上传成功(已成功)
正常获取openid(失败)
- 复现路径
无
- 提供一个最简复现 Demo
没有任何改动,基于此教程:小程序云开发实践
我遇到过类似的问题。
无法直接创建并部署云函数。
必须在在云开发控制台建立同名的云函数后,才能上传。然后我把开发者工具从nightly版本换为更稳定的RC版本后,就可以创建上传了。
然后,我进一步发现,还是不能用。然后依据官方文档云调用一节 “首先云函数中需要使用版本号至少 0.4.0
的 wx-server-sdk
,建议 wx-server-sdk
始终保持最新,保证云函数目录下的 package.json
的 wx-server-sdk
字段为 latest
,如本地安装依赖,请执行 npm install --save wx-server-sdk@latest
。” 搜索安装node,对单独的云函数文件夹,执行命令,实现了本地安装依赖,并成功本地调试。但是线上调用还是失败。
然后我又查到,在小程序miniprogram的文件夹内的app.js的wx.cloud.init内添加字段env:xxxx(环境ID,不是名字) 来指定你要运行miniprogram的环境。然后再运行就成功了。如果不指定的话,会默认在第一次创建的环境里运行,官方如是说。