收藏
回答

云函数wxacode.getUnlimited,但是小程序调用就无buffer?

在微信开发者工具中,调用云端测试云函数,wxacode.getUnlimited可以正常返回,参数和返回值如下:

返回值如下:


我们可以看到是调用成功,并且buffer中的数据是存在的。这个是云端测试云函数,正常。

下面在小程序里面调用云函数,(只贴控制的信息):

返回值如下:

可以看到,调用是成功,但是buffer字段是{},没有数据返回?这个是什么个意思呢?

云函数如下:

奇怪的就是,开发者工具中,云测试云函数,调用是成功的,但是在开发者工具中,还有手机(预览版、开发版)中均调用也是成功的,但是buffer字段是空的。

回答关注问题邀请回答
收藏

1 个回答

  • 金柯
    金柯
    05-09

    建议上传云存储,直接返回云文件ID

    exports.main = async (event, context) => {
       let {scene, page} = event;
      const wxacodeResult = await cloud.openapi.wxacode.getUnlimited({scene, page})
      const fileExtensionMatches = wxacodeResult.contentType.match(/\/([^\/]+)/)
      const fileExtension = (fileExtensionMatches && fileExtensionMatches[1]) || 'jpg'
    
      let uploadResult =  await cloud.uploadFile({
        cloudPath`images/wxacode/${(page+"/"+scene).replace(/[\/?&]/g"_")}.${fileExtension}`,
       fileContent: wxacodeResult.buffer,
      })
      return uploadResult.fileID 
      }
    
    05-09
    有用
    回复 1
    • 可乐嘚
      可乐嘚
      05-09
      好的,我试试看
      05-09
      回复
登录 后发表内容
问题标签