Почему изменение размера изображения с помощью Sharp не работает при загрузке изображения из корзины S3 - PullRequest
0 голосов
/ 29 апреля 2020

В настоящее время я использую резкое изменение размера изображений в моем ведре. Я загружаю изображения из своего ведра, используя предопределенный URL. В результате получается строка в кодировке 64, которая сохраняется в переменной. Когда я пытаюсь изменить размер моего изображения, используя следующий код:

 const file = await fetchS3Object(result);
 //// Fetched file ////
    if (file.mimeType.indexOf('image/') > -1)
    {
        //// Compress image with sharp and upload to s3 //// 
        const compressedFile = sharp(file.response)
            .jpeg({ progressive: true, force: false })
            .png({ progressive: true, force: false }).resize({ width: 320, height: 320, 
         fit: 'contain' })
     }

Однако я получаю следующую ошибку:

Error: Input file contains unsupported image format

Любое объяснение. Я хочу изменить размер строки в кодировке base64 и сохранить ее в другой переменной

Реализация fetchS3Object

  const result = await fetch(key, {
    method: 'GET',
    mode: "cors",
    headers: {
        'Access-Control-Allow-Origin': '*',
    }
})

const response = await result.text();
const parts = response.split(';');
const mimType = parts[0].split(':')[1];
const imageData = parts[1].split(',')[1];
return { response, mimType, imageData }.
...