Как загрузить и разархивировать zip-файл в памяти в NodeJs?

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

Вот что я пробовал :

var url = 'http://bdn-ak.bloomberg.com/precanned/Comdty_Calendar_Spread_Option_20120428.txt.zip';

var request = require('request'), fs = require('fs'), zlib = require('zlib');

  request.get(url, function(err, res, file) {
     if(err) throw err;
     zlib.unzip(file, function(err, txt) {
        if(err) throw err;
        console.log(txt.toString()); //outputs nothing
     });
  });

[РЕДАКТИРОВАТЬ] Как было предложено, я попытался использовать zip-библиотеку adm -, но до сих пор не могу это сделать:

var ZipEntry = require('adm-zip/zipEntry');
request.get(url, function(err, res, zipFile) {
        if(err) throw err;
        var zip = new ZipEntry();
        zip.setCompressedData(new Buffer(zipFile.toString('utf-8')));
        var text = zip.getData();
        console.log(text.toString()); // fails
    });
42
задан pathikrit 30 April 2012 в 20:21
поделиться