Я пытаюсь загрузить видео в AWS S3 с помощью AWS Amplify в React native. Я могу загрузить изображение, перейдя по этой ссылке:
aws-усиление Загрузить изображение с помощью PUT в хранилище
Я применяю тот же код для загрузки видео и успеха. Тем не менее, приложение вылетает, если размер видео большой.
В соответствии с примером они читают и преобразуют файл изображения / видео в base64
(много занимают память и даже вызывают сбой приложения), затем загружают все на сервер.
UPDATE
Я нашел ответ, используя blob по этой ссылке
React native - загрузка изображения в AWS S3 с использованием BLOB-объекта
uploadImageVersion2 = async () => {
const response = await fetch("https://static.asiachan.com/Berry.Good.600.42297.jpg");
const blob = await response.blob();
const fileName = 'profileImage.jpg';
await Storage.put(fileName, blob, {
contentType: 'image/jpg',
level: 'private'
}).then(data => console.log(data))
.catch(err => console.log(err))
}
Однако есть ошибка:
Мои вопросы:
1 / Есть ли способ избежать конвертации base64
перед загрузкой изображения / видео с помощью AWS Amplify
2 / Существуют ли другие способы загрузки изображений / видео в React native на AWS S3 без использования хранилища в AWS Amplify.
Если вы знаете ответ на эти два вопроса, пожалуйста, дайте мне знать и покажите мне, как.
Заранее спасибо!