节点 js 上带有密码的 Zip 文件夹(meteor/react)
Zip folder with password on node js(meteor/react)
这就是我得到的:
客户端填写输入表单并将此数据发送到服务器。服务器创建文件夹,并在其中生成包含用户数据的 JSON 文件。在同一文件夹中,用户上传了一些文件(图像)。
我需要什么:
我需要使用用户发送的输入表单中的密码来压缩此文件夹。并将这个受保护的 zip 文件发送回客户端。
我找到了从文件夹制作 zip 的库(像这个 https://www.npmjs.com/package/zip-dir )和生成单个文本文件并从中制作密码保护 zip 的库:
https://www.npmjs.com/package/minizip-asm.js
伙计们,我真的需要帮助来结合这两个解决方案))或者也许
也许有人已经有过这样的经历?
我想我找到了解决方案:
var Minizip = require('minizip-asm.js');
var fs = require("fs");
var mz = new Minizip();
var image = fs.readFileSync('./1.jpg');
var text = new Buffer("Abc~~~");
mz.append("haha/abc.txt", text, {password: "123"});
mz.append("haha/abc2.jpg", image, {password: "123"});
fs.writeFileSync("abc.zip", new Buffer(mz.zip()));
这就是我得到的: 客户端填写输入表单并将此数据发送到服务器。服务器创建文件夹,并在其中生成包含用户数据的 JSON 文件。在同一文件夹中,用户上传了一些文件(图像)。
我需要什么: 我需要使用用户发送的输入表单中的密码来压缩此文件夹。并将这个受保护的 zip 文件发送回客户端。
我找到了从文件夹制作 zip 的库(像这个 https://www.npmjs.com/package/zip-dir )和生成单个文本文件并从中制作密码保护 zip 的库: https://www.npmjs.com/package/minizip-asm.js
伙计们,我真的需要帮助来结合这两个解决方案))或者也许 也许有人已经有过这样的经历?
我想我找到了解决方案:
var Minizip = require('minizip-asm.js');
var fs = require("fs");
var mz = new Minizip();
var image = fs.readFileSync('./1.jpg');
var text = new Buffer("Abc~~~");
mz.append("haha/abc.txt", text, {password: "123"});
mz.append("haha/abc2.jpg", image, {password: "123"});
fs.writeFileSync("abc.zip", new Buffer(mz.zip()));