NodeJS: сохранение изображения в кодировке base64 на диск

Приложение My Express получает из браузера файл PNG в кодировке base64 (созданный из canvas с помощью toDataURL ()) и записывает его в файл. Но файл не является допустимым файлом изображения, и утилита «файл» просто определяет его как «данные».

var body = req.rawBody,
  base64Data = body.replace(/^data:image\/png;base64,/,""),
  binaryData = new Buffer(base64Data, 'base64').toString('binary');

require("fs").writeFile("out.png", binaryData, "binary", function(err) {
  console.log(err); // writes out file without error, but it's not a valid image
});
141
задан mahemoff 3 August 2011 в 11:53
поделиться