Отправка zip-файла по http

#javascript #node.js #zip #filesystems #node-modules

Вопрос:

Я разработчик python. Я очень новичок в nodejs и пытаюсь отправить клиенту zip-файл в качестве http-ответа. После долгих исследований я создал zip-файл из своих данных следующим образом:

 var fileDest = "file.zip";  var file = fs.createWriteStream(fileDest);    http.get(fileUrlStr.url, function(res) {    if (res.statusCode !== 200) {  var err = new Error('file download failed');  err.fileName = fileDest;  err.statusCode = res.statusCode;  return cb(err);  }  res.on('data', function(data) {  file.write(data);  }).on('end', function() {  file.end();  var zipFile = fs.readFileSync(fileDest, 'utf8').toBuffer();  cb(zipFile);  });  }).on('error', function (err) {  console.log('downloadFile error');  fs.unlink(fileDest);  err.fileName = fileDest;  cb(err);  });  

cb() Функция имеет следующую конфигурацию ответа :

 cb(response){   statusCode: statusCode,  headers: {  "Access-Control-Allow-Headers": "Content-Type,Authorization,X-Amz-Date,X-   Api-Key,X-Amz-Security-Token",  "Access-Control-Allow-Methods": "DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT",  "Access-Control-Allow-Origin": "*"  },  body: JSON.stringify(response)  }  

Но на стороне клиента я получил undefined ответ. Любая подсказка или помощь были бы очень признательны.