【问题标题】:How to parse a .zip file in Javascript before uploading to server如何在上传到服务器之前用 Javascript 解析 .zip 文件
【发布时间】:2013-04-12 12:56:18
【问题描述】:

我有一种情况,用户可能需要上传多个文本文件,然后将其保存在文件系统中。我不想让用户多次重复相同的动作,而是让他们可以选择上传一个 zip 文件,其中文件以特定格式保存。

有两种方法。

  1. 请他们上传一个 zip 文件。在服务器上解压文件并保存独立文件。如果我在内存中完成整个操作,则存在使用过多内存的风险,因此合乎逻辑的做法是将 zip 文件保存在文件系统上。但由于我们部署在 Amazon 上,这将涉及节省 S3,这会进一步增加从 EC2 到 S3 的延迟,而且我也不希望跟踪 Zip 文件令人头疼。

  2. 其他选项是在客户端本身解压缩文件,然后单独上传文件,这样我就不需要跟踪 zip 文件。但我无法理解如何在客户端解压缩文件并遍历其中的多个文件/文件夹。

如果使用第一种方法有任何更简单/更简洁的方法,我也对此持开放态度。后端在 Django 中。

非常感谢任何帮助。

【问题讨论】:

    标签: javascript jquery django file-upload


    【解决方案1】:

    为什么不让他们一次选择多个文件? I found this example online。 您也可以将它与拖放相结合。我认为将多个文件拖到表单中,会比上传 ZIP 文件更舒服。 Check this article to read more about the JavaScript file API.

    【讨论】:

    • 这是因为上传的文件有特定的依赖关系。如果有 2x 个文件,则 x 属于一种类型,其他 x 属于另一种类型。并且这两类文件之间是一一对应的。
    • 我认为可以在后端使用 JavaScript 或 Python 脚本来验证这些依赖关系。你能告诉我更多关于它的信息吗?为什么需要此验证?使用 JavaScript 文件 API,您可以检查本地文件类型、字节长度等。developer.mozilla.org/en-US/docs/DOM/File
    猜你喜欢
    • 1970-01-01
    • 2014-12-19
    • 2012-06-16
    • 1970-01-01
    • 2017-11-10
    • 2022-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多