Я пытаюсь загрузить изображение в мое хранилище amazon s3, но постоянно получаю сообщение об ошибке
TypeError [ERR_INVALID_ARG_TYPE]: первый аргумент должен быть одним из типов string, Buffer, ArrayBuffer, Array или Array-like Object.
Так что в основном я знаю, что должен поменять его на буфер, после некоторого поиска я попробовал несколько решений, но ни одно из них не работает, может кто-нибудь помочь мне указать, что я я ошибаюсь?
const s3Client = s3.s3Client;
const params = s3.uploadParams;
//const fileContent = fs.readFileSync(req.file); <-- tried this and still gave the same error
var fileContent = Buffer.from(req.file, 'base64')
params.Key = req.file.filename
params.Body = fileContent
console.log(req.file)
s3Client.upload(params, (err, data) => {
if (err) {
res.status(500).json({error:"Error -> " + err});
}
res.json({message: 'File uploaded successfully! -> keyname = ' + req.file.originalname});
});
Это само изображение, может быть, я его неправильно конвертирую? Подробности взяты из журнала консоли req.file
{
fieldname: 'image',
originalname: 'Kimmi.jpg',
encoding: '7bit',
mimetype: 'image/jpeg',
destination: './images/',
filename: 'c6b46e20-4efc-11ea-8b6a-1b4d698f6335.jpeg',
path: 'images\\c6b46e20-4efc-11ea-8b6a-1b4d698f6335.jpeg',
size: 35920
}