javascript - 单击按钮即可下载图像数组

标签 javascript html django vue.js vuejs2

我有一个非常基本的 html block ,其中有一个要下载的 button:

<div id="getImageWrapper">
    <div class="image">
        <p class="image-name">{{imageName}}</p>
        <button class="download-btn" @click="getImage">Download image/s</button>
    </div>
</div>

下载按钮的 getImage() 函数从服务器获取一组图像列表。

getImage() {
    const getImagesUrl = this.$store.state.website + '/api/get-requested-user-Images/';
    this.$http.get(getImagesUrl)
        .then(function (response) {
            console.log(response.data);
        })
        .catch(function (response) {
            console.log(response);
        });
}    

来自服务器的响应数据看起来像这样:

[
  {
    "image": "/media/1492960503_66.jpeg"
  },
  {
    "image": "/media/1492963100_0.jpeg"
  }
]

我的问题是下一步该怎么做才能将这组图像下载到用户的设备中(不是作为单个压缩文件,而是作为单独的单个图像文件),这在大多数浏览器中都可以使用?如果有帮助,我将使用 Django 作为后端,使用 Vuejs 作为前端。

最佳答案

您无法在 JavaScript 中压缩所有图像。对于压缩文件,您应该在后端 ( see post for zipping on fly ) 执行此操作,然后可以从浏览器下载它。

关于javascript - 单击按钮即可下载图像数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43775285/

相关文章:

javascript - 在使用 Javascript 上传文件之前显示图像和图像扩展名验证

javascript - 如何从时间戳生成哈希?

python - 使用 Cookiecutter Django 将字段添加到自定义用户模型

python - 使 Django Context 中的自定义变量永久化

python - Django:update_or_create重复值被填充

Javascript 从页面加载开始计数 - 需要使用 ajax 重置

javascript - SVG 圆中 dasharray 属性的奇怪行为

jquery - 动态表头修复问题

java - 如何使用 Java Html 类删除包含内容的特定 html 类

html - 如何确保子元素不会掩盖插入阴影?