云函数getOpenData报错,-601006,clouldID expired.
发布于 7 年前 作者 wyao 5903 次浏览 来自 官方Issues

云开发无法提供代码片段,粘贴主要逻辑部分代码:

wx.getUserInfo({
    success: res => {
        console.log(res)
        wx.cloud.callFunction({
            name: 'openapi',
            data: {
                action: 'getOpenData',
                openData: {
                    list: [
                        res.cloudID
                    ]
                }
            }
        }).then(res2 => {
            console.log('[getUserInfo] 调用成功:', res2)
        }).catch(err => {
            console.log('[getUserInfo] 调用失败:', err)
        })
    }
})

因为已经授权过了,这里直接演示getUserInfo获取用户授权信息。

现在遇到的问题是,不是所有账号/手机设备才出现这个问题,完全不清楚是什么原因导致的。

社区搜索了一下“cloudID expired.”,不止我一人遇到,这些帖子都无官方给出解答。

@微信开发团队 @微信官方  手动AT了,希望能看到引起注意!~

1 回复

已找到解决办法:

不要使用getOpenData去解密encryptedData数据,直接借用wx.cloud.CloudID(res.cloudID),传递参数过程替换来实现。

详细参考:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/signature.html

回到顶部