2016-04-04 4 views
0

Я создаю zip-файл, используя архиватор. ниже мой код, чтобы сделать это. Мне нужно защитить его паролем. Как мне это сделать?Как защитить пароль zip-файла в Nodejs?

var head={'Content-Type':'application/octet-stream','Content-disposition':'attachment; filename='+zipName,'Transfer-Encoding':'chunked' } 

res.writeHead(200,head); 

var archive = archiver('zip'); 

archive.pipe(res); 

archive.append(result, { name: attachment.aliasFileName }); 

archive.finalize(); 

return res.send("thanks"); 
+0

архиватор не поддерживает пароли https://github.com/archiverjs/node-archiver/ issues/168 – Prinzhorn

+0

@prinzhorn: Могу ли я использовать crypto, чтобы защитить паролем файлы zip? – user3677779

+0

Нет, если вы хотите быть совместимым с zip. Затем файл может быть прочитан только вашей системой, а не сторонними почтовыми клиентами. – Prinzhorn

ответ

0

Если вы работаете в Linux, вы можете сделать некоторые вещи, как этот

//create a zip 
    spawn = require('child_process').spawn; 
    zip = spawn('zip',['-P', 'password' , 'archive.zip', 'complete path to archive file']); 
    zip .on('exit', function(code) { 
    ...// Do something with zipfile archive.zip 
    ...// which will be in same location as file/folder given 
    }); 

См https://nodejs.org/api/child_process.html

+0

Я работаю над окнами. – user3677779

+0

Вы пробовали то же самое в окнах? – abhilash

+0

это работа, так как zip - это утилита на linux .. – user3677779

Смежные вопросы