У меня возникли проблемы с пониманием взаимосвязи между острым и мультером.
В настоящее время я использую multer, чтобы извлечь изображение из req и сохранить его на диск.Прекрасно работает:
const upload = Multer({
dest: './companyImages',
fileFilter,
limits: {
fileSize: MAX_SIZE
}
})
router
.route('/images')
.post(passportJWT, upload.array('files'), ImageUploadController.saveImage)
Я могу видеть, как я могу использовать Sharp, чтобы прочитать файл с диска или потока и изменить его размер, сохранить его на диск как 2-й файл.Затем я использовал бы fs.unlink для удаления 1-го файла.
sharp('./companyImages/0d928a1a10f462f33b8fed1ea1a20eec.png')
.resize(300, 200)
.toFile('output.jpg', function(err) {
// output.jpg is a 300 pixels wide and 200 pixels high image
// containing a scaled and cropped version of input.jpg
});
Я бы предпочел просто передать вывод с multer на sharp, а затем перейти на диск с sharp.
проблема - я не определил, как направить вывод мультитера к чему-либо кроме места назначения на диске.Я ищу мысли, примеры и заранее спасибо!