Node.js 下载解压上传克隆

Node.js 下载解压上传克隆,node.js,unzip,cloudinary,Node.js,Unzip,Cloudinary,我正在尝试下载一个ZIP文件,请求将其管道化,然后将其管道化到cloudinary var stream = cloudinary.uploader.upload_stream(function(result) { console.log(result) }); request(file_url).pipe(unzip.Parse()).pipe(stream); //<-- This do not work! ERROR: { error: { message: 'Empty fi

我正在尝试下载一个ZIP文件,请求将其管道化,然后将其管道化到cloudinary

var stream = cloudinary.uploader.upload_stream(function(result) {
  console.log(result)
});

request(file_url).pipe(unzip.Parse()).pipe(stream); //<-- This do not work!
ERROR: { error: { message: 'Empty file', http_code: 400 } }

fs.createReadStream('my_picture.jpg').pipe(stream); //<-- This works!
var-stream=cloudinary.uploader.upload\u流(函数(结果){
console.log(结果)
});
请求(文件url).pipe(解压.Parse()).pipe(流)// (您没有提到,但我假设您的
请求
var是的一个实例)

首先检查您的zip是否有效,是否包含您期望的内容:

(代码取自)

然后,从zip发送单个条目(即使只有一个条目):

var unzip = require('unzip');
var request = require('request');
var fstream = require('fstream');
var writeStream = fstream.Writer('output/path');

request(file_url)
  .pipe(unzip.Parse())
  .pipe(writeStream);
var cloudinary = require('cloudinary');
var unzip = require('unzip');
var request = require('request');
var stream = cloudinary.uploader.upload_stream(function(result) {
  console.log(result)
});
request(file_url)
  .pipe(unzip.Parse())
  .on('entry', function (entry) {
    var fileName = entry.path;
    var type = entry.type; // 'Directory' or 'File'
    var size = entry.size;
    if (fileName === "your_image.png") {
      entry.pipe(stream);
    } else {
      entry.autodrain();
    }
  });