Как хранить и просматривать изображения на firebase?

Как хранить и просматривать изображения на firebase?

Ответы

Ответ 1

Обновление (20160519). Firebase только что выпустила новую функцию Firebase Storage. Это позволяет загружать изображения и другие данные, отличные от JSON, в специализированную службу хранения. Мы настоятельно рекомендуем использовать это для хранения изображений, вместо того, чтобы хранить их в качестве кодированных данных base64 в базе данных JSON.

Вы, конечно же, можете! В зависимости от того, насколько велики ваши изображения, у вас есть несколько вариантов:

1. Для меньших изображений (до 10 мб)

У нас есть пример проекта, который делает это здесь: https://github.com/firebase/firepano

Общий подход заключается в загрузке файла локально (с помощью FileReader), поэтому вы можете сохранить его в Firebase так же, как и любые другие данные. Поскольку изображения представляют собой двоичные файлы, вам нужно получить содержимое, закодированное в base64, чтобы сохранить его в виде строки. Или даже более удобно, вы можете сохранить его как data: url, который затем будет готов к использованию в качестве src тега img (это что делает этот пример)!

2. Для больших изображений

У Firebase есть ограничение на 10mb (из строковых данных, закодированных в utf8). Если ваше изображение больше, вам придется разбить его на куски 10 МБ. Вы правы, хотя Firebase более оптимизирована для небольших строк, которые часто меняются, а не много мегабайтных строк. Если у вас много больших статических данных, я определенно рекомендую использовать S3 или CDN.

Ответ 2

Да, вы можете хранить и просматривать изображения в Firebase. Вы можете использовать средство выбора файлов, чтобы получить файл изображения. Тогда вы можете разместить изображение как хотите, я предпочитаю Amazon s3. После размещения изображения вы можете отобразить его, используя URL-адрес, созданный для изображения.

Надеюсь это поможет.

Ответ 3

Я в конечном итоге сохранил изображения в формате base64. Я переводил их со своего значения base64 при вызове из firebase.

Ответ 4

Вы также можете использовать службу под названием Filepicker, которая сохранит ваше изображение на своих серверах, а Filepicker, который теперь называется Filestack, предоставит вы с URL-адресом для изображения. Вы можете хранить URL-адрес Firebase.

Ответ 5

Есть несколько способов сделать это, я сначала сделал так, как это сделал Grendal2501. Затем я сделал это аналогично user15163, вы можете сохранить URL изображения в базе данных Firebase и разместить изображение на своем хосте Firebase или также на Amazon S3;

Ответ 6

Использование строки Base64 в JSON будет очень тяжелым. Парсер должен сделать много тяжелой работы. В настоящее время Fresco поддерживает только базовые версии Base64. Лучше положить что-нибудь в Amazon Cloud или Firebase Cloud. И получить изображение в виде URL. Так что вы можете использовать Пикассо или Glide для кэширования.