云函数用户数据解密
代码片段
exports.main = async (event, context) => { return new Promise((resolve, reject) => { let code = event.code; let iv = event.iv; let encryptedData = event.encryptedData; console.log(typeof(encryptedData),'encryptedData') axios.get('https://api.weixin.qq.com/sns/jscode2session?appid=wx374aa024a19a8946&secret=2ad8f6e664e66dbecd9fe3116911f633&js_code=' + code + '&grant_type=authorization_code') .then(res => { let session_key = res.session_key; let openid = res.openid let pc = new WXBizDataCrypt('wx374aa024a19a8946', session_key) let data = pc.decryptData(encryptedData, iv)//就是这句报错 resolve(data) }) .catch(err => { console.log(err, 'err') reject(err) }) }) } |
- 当前 Bug 的表现(可附上截图)
执行到这里的时候总是报错,提示参数必须时字符串,数组,Buffer,因为这个加密数据本身就是一个字符串,解密用到的构造函数也是官方提供的,不知道为啥还会报错
- 预期表现
希望知道这里为啥会报错或者有其他的解密方法告知也可以
-
复现路径
-
提供一个最简复现 Demo
