cloudinary多个.jpg上传NODE.JS

有任何一个人试图上传50 +图像cloundinary? 我一直在尝试,但问题是,承诺没有得到解决(即使使用.reflect(),并不能上传所有的图像。根据上传的速度,它将失败30%〜70%。

有什么办法可以完全使它asynchronous,并确保所有图像上传正确? 我使用的模块只有蓝鸟和cloudinary模块从他们的文档。

Promisebd = require('bluebird'); function uploadimg(img, i, itemId) { var pubID = 'a2z/toys/' + itemId + '/' + i; // return new cloudImg.v2.uploader.upload(img, { return cloudinary.v2.uploader.upload(img, { // works public_id: pubID, quality: 90 // use_filename: true, } , function(err, res){ if(err) { console.log(err); } console.log(res); }); } promiseArr.push(uploadimg(fullimg, i, d[0].details.detailsProductId)); // pushing the promises to Arr Promisebd.all(promiseArr.map(function(promise) { return promise.reflect(); })).each(function(inspection) { if(inspection.isFulfilled()) { console.log('The promise is the arr was fulfilled with ', inspection.value()); }else{ console.log('The promise is NOT the arr was NOT fulfilled with ', inspection.reason()); } }) 

promsify您的上传imgfunction,并尝试使用它

 function uploadimgAsync(img, i, itemId) { return new Promise(function (resolve, reject) { var pubID = 'az/toys/' + itemId + '/' + i; cloudinary.v2.uploader.upload(img, { // works public_id: pubID, quality: 90 }, function(err, res){ if(err) { reject(err); } resolve(res); }); }); }