Я сейчас пытаюсь получить доступ к объекту из моего S3 Bucket. Однако при запуске преобразования буфера я получаю следующую информацию на основе изображения. Я не уверен, должен ли это быть правильный результат или нет ...
Цель этого - получить exif-информацию из изображений, хранящихся в AWS, и скорректировать их поворот до 0 градусов, так как некоторые изображения которые хранятся в моем хранилище, являются несовместимыми из-за старых разработчиков.
Файлы в настоящее время являются жестким кодом для тестирования.
Кроме того, файлы сохраняются в формате png с метатипом как image / jpeg. Не уверен, что это как-то связано с ошибкой.
Вот текущий код для доступа к aws информации:
require('dotenv').config();
const aws = require('aws-sdk');
aws.config.update({
secretAccessKey: process.env.AWS_ACCESS_KEY,
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
region: process.env.AWS_REGION,
});
const s3 = new aws.S3();
const getParams = {
Bucket: process.env.AWS_ACCESS_BUCKET_IMG_UPLOAD,
Key: 'forms_bg_test.png',
const getS3Test = (res) => {
s3.getObject(getParams, (err, data) => {
// Handle any error and exit
if (err) {
console.error(err);
res.sendStatus(400);
}
// No error happened
// Convert Body from a Buffer to a String
console.log({ data });
const objectData = data.Body.toString('utf-8'); // Use the encoding necessary
console.log({ objectData });
res.status(200).send(objectData);
});
};
Выяснил, что код должен быть toString ('base64') для получения строки. Теперь другая проблема заключается в том, как бы я использовал эту информацию об изображении и отобразил фактическое изображение?
Консоль - отображение преобразованных данных буфера