exports.main = async (event, context) => {
// 获取access_token
const newToken = await uniCloud.httpclient.request('https://api.weixin.qq.com/cgi-bin/token', {
data: {
grant_type: 'client_credential',
appid: '小程序appid',
secret: '小程序密钥'
},
method: 'GET',
contentType: 'json',
dataType: 'json'
})
var AccessToken=newToken.data.access_token;
//使用access_token获取小程序码
var apiUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + AccessToken;
var res = await uniCloud.httpclient.request(apiUrl,{
method: 'POST',
contentType: 'json',
data:{
scene: 'uid=UID',
page: 'pages/index/index'
}
})
//把获取到的小程序码buffer转换为base64
let buffer = Buffer.from(res.data);
let base64 = buffer.toString('base64');
console.log("拿到的base64----",base64)
return base64
};```
弃续
- 发布:2023-04-23 14:35
- 更新:2023-12-15 10:39
- 阅读:155
产品分类: uniCloud/App
示例代码:
操作步骤:
新建云函数,复制上述示例的代码,把小程序appid和密钥改成自己小程序的,直接本地运行就可以看到
新建云函数,复制上述示例的代码,把小程序appid和密钥改成自己小程序的,直接本地运行就可以看到
预期结果:
把返回的buffer转成base64后应该可以显示
把返回的buffer转成base64后应该可以显示
实际结果:
把返回的buffer转换出的base64貌似是截取了一部分uni-id-pages的token
把返回的buffer转换出的base64貌似是截取了一部分uni-id-pages的token
bug描述:
在云函数中使用微信小程序的https://api.weixin.qq.com/wxa/getwxacodeunlimit接口获取小程序码,把该接口返回的buffer转换成base64后变成了使用uni-id-pages登录后的token