Добавление файла в кодировке base64 с использованием данных формы (nodejs)

Я хочу использовать модуль nodejs form-data для создания запроса multipart/form-data. Для моей конечной точки HTTP, которую я отправляю, требуется файл.

Мой «файл», который я хочу прикрепить, на самом деле является версией файла в кодировке base64. У меня есть имя файла отдельно, которое я могу использовать.

Глядя на модуль данных формы - из примеров видно, что он зависит от файла, возвращаемого из fs или запроса; Можно ли использовать параметры (поле, значение, параметры), чтобы он принимал либо версию файла в кодировке base64, либо мне нужно сначала его декодировать? В конечном счете составная часть все равно кодируется, или, по крайней мере, может быть.


person Barry King    schedule 18.01.2016    source источник


Ответы (1)


var upload = multer({ storage: multer.memoryStorage({}) })

app.post('/', upload.single('test'), function (req, res, next) {
  var raw = new Buffer(req.file.buffer.toString(), 'base64')

  fs.writeFile('/tmp/upload.png', raw, function (err) {
    if (err) return next(err)

    res.end('Success!')
  })
})

это помогает?

имя файла, которое вы можете получить из req.params или req.query.param , где угодно

person Aishwat Singh    schedule 18.01.2016