2013-04-29 185 views
2

我正在寻找一个字符串压缩/解压缩算法的JavaScript实现,其中数据在客户端创建并存储在HTML表单中的隐藏字段中。客户端数据压缩/解压缩?

我读了约gzip,但它压缩数据服务器端,而在我的情况下,我想压缩它的客户端,将其发送到服务器,或从服务器接收它在客户端再次解压缩。

我发现这LZF Compression示例基于LZFjs,但它会生成二进制数据,需要处理和存储在一个隐藏的表单字段,它工作在文件而不是纯数据。

有关纯数据客户端数据压缩/解压缩的建议也有效吗?

+0

可能重复(http://stackoverflow.com/questions/2252465/javascript-client-data-压缩) – 2013-04-29 09:44:35

+0

http://danml.com/js/compression.js你';;想要使用atob/btoa进入客户端和服务器之间。 – dandavis 2014-08-25 00:59:49

回答

4

有了这个开源的JavaScript压缩库,由Pierre curto: https://github.com/pierrec/node-lz4

谷歌搜索的时候,我也发现了这个zlib的实现(我没测试过): http://nodejs.org/api/zlib.html

+2

谢谢,但我没有在一个节点应用程序工作,我只需要压缩代码没有相关的节点集成..可能是两个功能的压缩和解压缩 – simo 2013-04-30 06:23:58

+0

它不再需要'节点',并可以直接集成在浏览器内。 – Cyan 2014-08-29 17:09:12

2

你也可以尝试JSZip。要在浏览器中运行它,您只需要download并包含dist/jszip.js或dist/jszip.min.js。

这是积极支持和支持各种各样的浏览器,包括每个人最喜欢的IE6/7/8!

用法(从他们的文档):[JavaScript客户数据压缩]的

var zip = new JSZip(); 

zip.file("Hello.txt", "Hello World\n"); 

var img = zip.folder("images"); 
img.file("smile.gif", imgData, {base64: true}); 

var content = zip.generate({type:"blob"});