收藏
回答

单页模式下,wx.base64ToArrayBuffer返回undefined?

在小程序单页模式下,调用wx.base64ToArrayBuffer(base64)接口返回undefined:

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

3 个回答

  • 小熊饼干😂🤣🤩🥳
    小熊饼干😂🤣🤩🥳
    06-20

    因为 base64 字符串中只能有字符数字和 +/,其它都是非法字符,传递给 wx.base64ToArrayBuffer 之前可以先用使用正则将这些非 base64 字符移除掉,如

    const removeInvalidCharacter = (str) => {
      return str.replace(/[^A-Za-z0-9+/]/g, '');
    }
    
    wx.base64ToArrayBuffer(removeInvalidCharacter('-dasds_fjkhfkj'))
    


    06-20
    有用
    回复
  • 刚
    2023-04-03

    你好,这个问题解决了吗


    2023-04-03
    有用
    回复 1
    • 小熊饼干😂🤣🤩🥳
      小熊饼干😂🤣🤩🥳
      06-20
      因为 base64 字符串中只能有字符数字和 +/,其它都是非法字符,传递给 wx.base64ToArrayBuffer 之前可以先用使用正则将这些非 base64 字符移除掉,如
      const removeInvalidCharacter = (str) => {
        return str.replace(/[^A-Za-z0-9+/]/g, '');
      }
      wx.base64ToArrayBuffer(removeInvalidCharacter('-dasds_fjkhfkj'))
      06-20
      回复
  • Cjiang
    Cjiang
    2021-07-02

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2021-07-02
    有用
    回复 1
    • 小熊饼干😂🤣🤩🥳
      小熊饼干😂🤣🤩🥳
      06-20
      因为 base64 字符串中只能有字符数字和 +/,其它都是非法字符,传递给 wx.base64ToArrayBuffer 之前可以先用使用正则将这些非 base64 字符移除掉,如
      const removeInvalidCharacter = (str) => {
        return str.replace(/[^A-Za-z0-9+/]/g, '');
      }
      wx.base64ToArrayBuffer(removeInvalidCharacter('-dasds_fjkhfkj'))
      06-20
      回复
登录 后发表内容