美文网首页
blob与base64转换

blob与base64转换

作者: 大佬啊 | 来源:发表于2020-01-05 20:42 被阅读0次

    在处理文件预览与打印的时候经常需要转换成base64在前端处理,后台返回blob对象。

    blob转换为base64

    
    function getBase64(blob) {
    
      return new Promise((resolve, reject) => {
    
        const reader = new FileReader();
    
        reader.readAsDataURL(blob);
    
        reader.onload = () => resolve(reader.result);
    
        reader.onerror = error => reject(error);
    
      });
    
    }
    
    

    base64转换为blob

    
    function dataURItoBlob(base64Data) {
    
      let byteString;
    
      if (base64Data.split(',')[0].indexOf('base64') >= 0) {byteString = atob(base64Data.split(',')[1]);}
    
      else {
    
        byteString = unescape(base64Data.split(',')[1]);
    
      }
    
      const mimeString = base64Data.split(',')[0].split(':')[1].split(';')[0];
    
      const ia = new Uint8Array(byteString.length);
    
      for (let i = 0; i < byteString.length; i++) {
    
        ia[i] = byteString.charCodeAt(i);
    
      }
    
      const blob = new Blob([ia], {
    
        type: mimeString,
    
      });
    
      return blob;
    
    }
    
    

    以上

    相关文章

      网友评论

          本文标题:blob与base64转换

          本文链接:https://www.haomeiwen.com/subject/qrmcactx.html