第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

前端“花式”下載 文件大法 小結(jié)

標簽:
JavaScript

数据源:Blob

function saveFileToBlob(blob, tagFileName, fileType) {
    var downloadElement = document.createElement('a');
    var href = window.URL.createObjectURL(blob); //创建下载的链接
    downloadElement.href = href;
    downloadElement.download = (tagFileName ? tagFileName : moment(new Date().getTime()).format('YYYYMMDDhhmmss')) + '.' + fileType; //下载后文件名
    document.body.appendChild(downloadElement);
    downloadElement.click(); //点击下载
    document.body.removeChild(downloadElement); //下载完成后,移除元素
    window.URL.revokeObjectURL(href);
}

数据源:Base64

function saveFileToBase64(urlData, type) {
    // 去掉url的头,并转化为byte
    var bytes = window.atob(urlData);
    // 处理异常,将ascii码小于0的转换为大于0
    var ab = new ArrayBuffer(bytes.length);
    // 生成视图(直接针对内存):8位无符号整数,长度1个字节
    var ia = new Uint8Array(ab);
    for (var i = 0; i < bytes.length; i++) {
      ia[i] = bytes.charCodeAt(i);
    }
    var blob = new Blob([ab], {
      type: 'application/json'
    });
    //引用上文下载二进制流的方法
    saveFileToBlob(blob, '', type);
}

数据源:Link

function saveFileToLink(url, fileName, type, fn) {
    var xhr = new XMLHttpRequest();
    url = url.includes('https:') ? url.replace('https:', '') : url.replace('http:', '');
    xhr.open('get', url, true);
    xhr.setRequestHeader('Content-Type', 'application/' + type);
    xhr.setRequestHeader("If-Modified-Since", "0");
    xhr.responseType = "blob";
    xhr.onprogress = function (e) {
      //文件下载进度
      if (fn && typeof fn == 'function') {
        fn(e); //监听文件下载进度;
      }
    }, xhr.onload = function () {
      if (this.status == 200) {
        //接受二进制文件流
        var blob = this.response;
        saveFileToBlob(blob, fileName, type);
      }
    }, xhr.send();
}


點擊查看更多內(nèi)容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學(xué)

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消