L oop через все изображения в каталоге и преобразовать в base64 - PullRequest
1 голос
/ 22 апреля 2020

Я пытаюсь l oop через все изображения в моей папке преобразовать его в base64 и отправить в MongoDB.

Я начал с одного изображения, работал нормально.

var filename = '1500.jpg';
var binarydata = fs.readFileSync(filename); 
var converted = new Buffer(binarydata).toString("base64");
console.log(converted);

Приведенный выше код дает мне base64 для одного файла.

Я попытался изменить код, чтобы он пропустил l oop через все файлы в моем каталоге и дал мне base64 для каждого файла. вот что я написал, но это не сработало;

var variantfolder = './variantimages';
fs.readdir(variantfolder, function(err, files){
  if (err) {
    console.log(err);
  }
  else {
    fs.readFileSync(files, function(err, res){
      if (err){console.log('err')} else {
        var converted = new Buffer(res).toString("base64");
        var onevariant = {
          "imagename":files,
          "imagebase64":converted
        }
        var newvariant = new Variant(onevariant)
        newvariant.save(err, newvar){
          if (err) {
            console.log('err');
          }
          else {
            console.log('saved to mongo');
          }
        }
      }
    })
  }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...