【问题标题】:Download multiple files via Axios and .zip them通过 Axios 下载多个文件并 .zip 压缩它们
【发布时间】:2021-02-26 11:43:29
【问题描述】:

我试图在 VueJS 中公开一个 .zip,其中包含存储在远程服务器中的多个文件。 我至少尝试了一个 .csv 文件:下载有效,但打开存档失败,因为 .zip 被识别为无效。

我试图做的是,下面this previous issue

  try {
    const response = await axios.get(download_url, {
      responseType:'blob'
    });
    
    const url = window.URL.createObjectURL(new Blob([response.data));
    const link = document.createElement("a");
    link.href = url;
    link.setAttribute("download", "filename.zip");
    document.body.appendChild(link);
    link.click();

  } catch (error) {
    console.log(error);
  }

这允许我下载 .zip,但同样无效,我无法打开它。

然后,我希望能够使用多个“download_urls”,即在同一个 .zip 中使用多个文件,但现在我很乐意至少使用一个文件成功!

提前感谢您的帮助。

【问题讨论】:

    标签: javascript vue.js axios zip


    【解决方案1】:
    1. 让链接()直接就是你从axios得到的(axios.get(url))

    2. 要在一个 zip 中下载多个文件,您可以让服务器打包它们并提供公共下载链接(如果您需要,我们可以详细说明)

    3. 再次使用来自服务器的公共链接下载 zip

    4. 使用download_url 并把它放在一个

    【讨论】:

    • 非常感谢@babacar 的回复。你能更明确地解释一下吗?
    • 我更新了我的答案。如果您需要更多帮助,请告诉我
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    • 2012-10-25
    • 1970-01-01
    • 2011-12-12
    • 2011-05-28
    相关资源
    最近更新 更多