弃续
弃续
  • 发布:2023-04-23 14:35
  • 更新:2023-12-15 10:39
  • 阅读:155

【报Bug】云函数使用微信的getwxacodeunlimit获取小程序码返回的buffer转成base64变成了uni-id-pages登录的token

分类:uniCloud

产品分类: uniCloud/App

示例代码:

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  
};```

操作步骤:

新建云函数,复制上述示例的代码,把小程序appid和密钥改成自己小程序的,直接本地运行就可以看到

预期结果:

把返回的buffer转成base64后应该可以显示

实际结果:

把返回的buffer转换出的base64貌似是截取了一部分uni-id-pages的token

bug描述:

在云函数中使用微信小程序的https://api.weixin.qq.com/wxa/getwxacodeunlimit接口获取小程序码,把该接口返回的buffer转换成base64后变成了使用uni-id-pages登录后的token

2023-04-23 14:35 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com - 912750

怎么处理了?

Azikou

Azikou

我拿到的buffer转成base64 还是没法渲染出来。。好难啊

要回复问题请先登录注册