Загрузка, хранение и загрузка изображений

#javascript #node.js #reactjs #react-native #backend

#javascript #node.js #reactjs #react-native #серверная часть

Вопрос:

У меня есть фундаментальный вопрос. Я работаю над несколькими проектами, разрабатывающими бэкэнд и интерфейс с помощью node, react и react-native. Иногда мне приходится загружать, сохранять и перезагружать изображения. Я нашел способ загружать изображения в облачный сервис и загружать их позже в моем интерфейсе. Но теперь у меня такая ситуация, что я не хочу хранить изображения в облачном сервисе, вместо этого я хочу сохранить изображения в своей собственной базе данных. Поскольку я использую фреймворк в своем бэкэнде, который не поддерживает такие типы, как BLOB, единственный способ сохранить изображение — преобразовать изображение в строку, например base64. Теперь я столкнулся с некоторыми проблемами:

  • Изображения размером более 2 МБ кажутся слишком большими
  • Если я отправляю запрос POST для сохранения изображения, я получаю сообщение об ошибке, что полезная нагрузка или что-то в этом роде слишком велика
  • Если я попытаюсь записать в консоль свою строку base64, браузер часто зависает
  • Если я попытаюсь скопировать и вставить строку base64, например, в файл JavaScript в качестве комментария, она не показывает мне полную строку, вместо этого я нашел в какой-то момент a …

Поэтому мне кажется, что этот подход не подходит для приложений реального мира. Итак, я хочу спросить, как крупные игроки обрабатывают этот рабочий процесс с изображениями? Например, если я открываю instagram или приложение для покупок, это приложение может загружать сотни изображений за считанные секунды. Или, если я загружаю изображение в Instagram, как это делается в фоновом режиме? Преобразуют ли они изображения в строку?

Я уже потерпел неудачу, отправив простой POST-запрос с изображением размером 5 МБ, преобразованным в строку base64.

Заранее благодарю вас за несколько полезных советов.