ie11 Downloading Base64 documents

后端 未结 4 700
一向
一向 2020-12-11 02:19

I have tried pretty much everything at this point and I cannot get anything to work in ie.

I need ie to download base64 documents from an attachment panel. I have n

4条回答
  •  被撕碎了的回忆
    2020-12-11 02:43

    var data = item;
    var fileName = name;
    if (window.navigator && window.navigator.msSaveOrOpenBlob) { // IE 
    workaround
    var byteCharacters = atob(data);
    var byteNumbers = new Array(byteCharacters.length);
    for (var i = 0; i < byteCharacters.length; i++) {
        byteNumbers[i] = byteCharacters.charCodeAt(i);
    }
    var byteArray = new Uint8Array(byteNumbers);
    var blob = new Blob([byteArray], {type: 'application/octet-stream'});
    window.navigator.msSaveOrOpenBlob(blob, fileName);
    }
    else if( agent.indexOf('firefox') > -1)
    {
    console.log(extention,'item111')
    var byteCharacters = atob(data);
    var byteNumbers = new Array(byteCharacters.length);
    for (var i = 0; i < byteCharacters.length; i++) {
      byteNumbers[i] = byteCharacters.charCodeAt(i);
     }
     var byteArray = new Uint8Array(byteNumbers);
    //var FileSaver = require('file-saver');
     var blob = new Blob([byteArray], {type: "application/octet-stream"});
     saveAs(blob, fileName);
      }
     else{
      this.fileDownload='data:application/octet-stream;base64,'+item;
       var link = document.createElement("a");
       const fileName=name;
       link.href = this.fileDownload;
       link.download=fileName;
       link.click();
      }
      }
    

提交回复
热议问题