问题标签 [jszip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4074 浏览

javascript - Chrome HTML5 FileReader crashes when trying to read large file

I have a form that allows users to select a zip file for upload. I'm trying to do client-side validation of this zip file before it is uploaded to my server since the upload might take a while and I'd also like to conserve bandwidth.

All I need to do is read a .csv file that should be included in the zip, and verify the presence of other files in the zip that are referenced in the .csv. To accomplish this, I am trying to use JSZip.

If the archive is small, this works great. If the archive is large (testing with ~500MB file) then Chrome crashes.

In my code I've commented out all of the logic in my onload callback and verified that none of that is causing the crash. I've discovered that Chrome crashes before the onload callback is ever called.

I've tested this in FireFox with much larger zip files and it works fine.

0 投票
1 回答
827 浏览

javascript - 在 OpenLayers 中通过 XMLHttpRequest 加载二进制数据

我需要通过 OpenLayers.Protocol.HTTP 在 OpenLayers 中加载一个 zip 文件。我想在 jszip 的帮助下加载并解压缩它。由于我想加载二进制数据,我必须更改 XMLHttpRequest 的 mimeType。一个 jszip 示例说它是这样工作的:

不幸的是,OpenLayers 使用的 XMLHttpRequest 类 (OpenLayers.Request.XMLHttpRequest) 没有 overrideMimeType 函数。当我尝试在不设置 mime 类型的情况下解压缩加载的数据时,我收到错误消息“已到达数据结束(数据长度 = 23798955,询问索引 = 24968701)。损坏的 zip?”,所以看起来 zip 没有正确加载. 任何建议如何解决这个问题?

0 投票
2 回答
2227 浏览

javascript - 在 .Net Web App 中上传(使用 JSZIP)时,需要从客户端计算机压缩所选文件。压缩文件应上传到服务器位置

我是使用 JSZIP 的新手,可能会问一个明显的问题。但这里有:

我正在使用文件上传控件将文件上传到服务器。源文件位于客户端的路径中。目标文件应该在服务器上。

我的要求是,当客户端选择文件时,应该在 javascript 中使用 JSZIP 对其进行压缩,然后上传到服务器。

我试图找到解决方案,但一无所获。到目前为止,我尝试过的解决方案也没有奏效。

  1. 我需要读取“myFileUploadControl1”选择的客户端计算机上的文件。
  2. 压缩并将文件保存在本地 RAM 或客户端计算机中。
  3. 之后在服务器路径上上传。

谁能帮我?

0 投票
1 回答
388 浏览

meteor - Meteor + Iron Router + JSZip 不工作

我正在尝试使用 Meteor 创建和提供一个 zip 文件。这是我所拥有的:

我有 jszip.min.js 和 jszip-deflate.js。创建了一个 zip 文件,我可以下载它,但我无法使用存档管理器打开该文件(已损坏)。如果我用文本编辑器打开 data.zip,我会看到“PK”加上两个十六进制字符。

如何创建一个 zip 文件并返回它?

回答:

使用默认的 base64 编码进行压缩,并在 end/write 方法中指定响应编码:

0 投票
2 回答
1175 浏览

jquery - JQuery 向 Django 发送文件

我有下一个问题。当我发送带有表单的 POST 请求时:

然后在服务器上我有代码:

服务器打印:

当我在 jQuery 代码中逐步执行此操作时:

我在“request.POST”的“文件”参数中有这个文件,但“request.FILES”是空的()。我做错了什么?

0 投票
1 回答
3053 浏览

javascript - 使用 jszip 损坏存档内容

我正在对 Web 应用程序进行一些本地开发,并且需要从客户端的某些文件中创建一个 zip 存档。我有一个非常简单的测试页面,带有一个按钮和下载链接。单击该按钮会使用jszip 库生成一个 zip 文件,其中包括使用 XMLHttpRequest 加载的 png 图像。当您单击下载链接时,会下载一个存档,其中包含一个 png 图像文件,但该 png 图像已损坏。Windows 告诉我:

“WinZip Viewer 无法显示图像,因为图像文件丢失或无效;图像被跳过。”

我尝试遵循“常规”将高字节固定为 0xff 的解决方案,但我得到了相同的结果。(这是我的 GetZip2() 函数。)

任何人都可以提供关于为什么 zip 内容被破坏的想法吗?

提前致谢

HTML 代码:

js代码:

0 投票
1 回答
4722 浏览

javascript - 如何使用 jszip 压缩 pdf 或 ppt 文件?

我想要使​​用 jszip 压缩 pdf 或其他格式,如 excel、ppt 等。

如何在 jszip 中压缩这种格式?

我的代码如下

我想要的是我将从 html 中的 a 元素获取文件的路径。我想使用 jszip 压缩 pdf

jsfiddle

0 投票
1 回答
2174 浏览

javascript - 使用 JSZip 压缩驻留在服务器上的 PDF

好像目前是不可能的。有人做过吗?我只有几个 PDF 文件,我想将它们添加到 zip 文件夹中!

0 投票
1 回答
278 浏览

javascript - 从 JSZip 存档中检索图像

我将图像存储在 JSZip 存档中,需要检索并显示它。

zip 对象有一个保存二进制数据的数据字段。

我现在得到了数据,但我不能用它来创建这样的图像:

对于我需要做什么,我比较迷茫。我知道数据不能以其当前形式使用,但我不确定解决方案是什么。

任何帮助都是值得的

0 投票
1 回答
4053 浏览

javascript - 在客户端下载图像到 zip

好的,所以我想做的是下载存储在 AngularJS 中的 JavaScript 数组中的多个图像。我还没有找到任何以“纯”图像(如 .png .jpg 等)的形式执行此操作的方法(尽管如果有人知道如何执行此操作,请告诉我)。所以我转而尝试根据这里的描述在 jszip.js 的帮助下压缩图像:http: //viralpatel.net/blogs/create-zip-file-javascript/

所以这是用户点击“下载”时调用的代码:

当执行最后一行代码时会出现问题,浏览器崩溃......我不太明白文件下载是如何工作的......任何关于我应该阅读的建议或提示将不胜感激!

更新:我尝试使用 Downloadify 来解决我的问题......并添加了一些代码:

现在我可以保存 zip 文件了:)

但是我仍然有问题... zip 中的文件已损坏...

正常的非损坏图像如下所示:

如果我将“损坏”图像上传到我的网站,并检查损坏图像的范围,则数据如下所示:

或者,我删除 {base64: true}:

我能做些什么呢?