Beispiel #1
0
    }, function(err) {
      if (err) 
        return res.status(500).json({ error: err })
      res.set('Content-disposition', 'attachment; filename*=UTF-8\'\'' +
        encodeURIComponent(downloadName) + '.zip')
      res.set({ 'Content-Type': 'application/zip' })
      zip.generateNodeStream({type:'nodebuffer',streamFiles:true})
      .pipe(res)
      .on('finish', function(){

        Upload.update(query, { $inc: { downloadNum: 1} }, { multi: true }, function(err) {
          if (err) {
            return 
          }
        })

        uploads.forEach(function(upload) {
          User.findOneAndUpdate({
            username: upload.owner
          }, { $inc: { downloadNum: 1} }, { new: true }, function(err) {
            if (err) {
              return
            }
          })
        })

      })
    })
Beispiel #2
0
 }).populate('participantId').exec(function (err, participants) {
     var csv = convertRosterToCsv(roster, participants);
     zip.file(rosterFileName(roster) + ".csv", csv);
     counter++;
     if (counter === rosters.length) {
         zip
             .generateNodeStream({type: 'nodebuffer', streamFiles: true})
             .pipe(res);
     }
 });
Beispiel #3
0
 ParticipantSchedule.find({participantId: new ObjectId(participant._id)}).populate('classrosterId').exec(function (err, schedule) {
     console.log(settings);
     var csv = convertScheduleToCsv(schedule, settings.startTime, settings.endTime);
     zip.file(participant.name + ".csv", csv);
     counter++;
     if (counter === participants.length) {
         zip
             .generateNodeStream({type: 'nodebuffer', streamFiles: true})
             .pipe(res);
     }
 });
http.createServer(function(request, response) {
  var file = "/tmp/test.zip";
  
  zip.file('hello.txt', 'Hello World!');
  
  zip
  .generateNodeStream({type: 'nodebuffer', streamFiles: true})
  .pipe(fs.createWriteStream(file))
  .on('finish', function () {
    var stat = fs.statSync(file);
    
    response.writeHead(200, {
      "Content-Type": "application/octet-stream",
      'Content-Length': stat.size,
      "Content-Disposition": "attachment; filename=" + path.basename(file)
    });
    
    fs.createReadStream(file).pipe(response);    
  }); 
}).listen(2000);
Beispiel #5
0
var fs = require("fs");
var JSZip = require("jszip");
var zip = new JSZip();

zip.file('hello.txt', 'Hello World!');

zip
.generateNodeStream({type: 'nodebuffer', streamFiles: true})
.pipe(fs.createWriteStream('/tmp/test.zip'))
.on('finish', function () {
  // JSZip generates a readable stream with a "end" event,
  // but is piped here in a writable stream which emits a "finish" event.
  console.log('done');
});
Beispiel #6
0
 it('has generateNodeStream', function (done) {
   var zip = new JSZip();
   zip.generateNodeStream();
   done()
 })