最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jszip插件實(shí)現(xiàn)圖片打包下載的方法分析 原創(chuàng)

原創(chuàng)  更新時(shí)間:2023年05月19日 09:15:46   原創(chuàng) 投稿:shichen2014  
這篇文章主要介紹了jszip插件實(shí)現(xiàn)圖片打包下載的方法,結(jié)合實(shí)例形式分析了JavaScript使用jszip插件依據(jù)圖片列表打包下載zip壓縮文件的相關(guān)操作技巧,需要的朋友可以參考下

前言

由于后端使用php、node.js、java等進(jìn)行大量的圖片下載操作可能會(huì)導(dǎo)致服務(wù)器負(fù)載過高,所以將圖片下載轉(zhuǎn)移到客戶端是個(gè)不錯(cuò)的選擇,借助 HTML5 中的新特性 Blob 和 URL.createObjectURL API 實(shí)現(xiàn)。

實(shí)現(xiàn)代碼

function download(){
  var urls = [
    "https://example.com/img1.jpg",
    "https://example.com/img2.png"
  ];
  var zip = new JSZip();
  var count = 0;
  urls.forEach((url, index) => {
    var xhr = new XMLHttpRequest();
    xhr.open("GET", url, true);
    xhr.responseType = "blob";
    xhr.onload = function () {
      if (xhr.status === 200) {
        var name = url.substring(url.lastIndexOf("/") + 1);
        zip.file(name, xhr.response);
      }
      count++;
      if (count === urls.length) {
        zip.generateAsync({type:"blob"}).then(function(content) {
          saveAs(content, "pictures.zip");
          console.log("下載成功");
        });
      }
    };
    xhr.send();
  });
}

另外,注意:在頁(yè)面頂部還需要引入jszip插件

<head>
  <script src="https://cdn.bootcdn.net/ajax/libs/jszip/3.6.0/jszip.min.js"></script>
</head>

這樣可以將圖片下載過程從服務(wù)器轉(zhuǎn)移到客戶端,從而減輕服務(wù)器壓力。同時(shí)需要注意的是,在使用客戶端進(jìn)行大量圖片下載時(shí),也要防止網(wǎng)絡(luò)請(qǐng)求并發(fā)數(shù)量過多導(dǎo)致瀏覽器崩潰。

相關(guān)文章

最新評(píng)論

辰溪县| 四会市| 鲁山县| 应城市| 新巴尔虎右旗| 化州市| 望城县| 武清区| 满城县| 从化市| 密山市| 九寨沟县| 青田县| 富顺县| 苏尼特右旗| 丰原市| 徐州市| 那坡县| 密云县| 连州市| 科技| 鄂尔多斯市| 保山市| 土默特左旗| 美姑县| 独山县| 汉中市| 呼伦贝尔市| 德兴市| 辰溪县| 青川县| 重庆市| 永靖县| 股票| 互助| 花莲市| 彩票| 元谋县| 聂荣县| 尼玛县| 古丈县|