В настоящее время я делаю приложение для iOS, которое требует функции загрузки изображений. Я использую Firebase для хранения изображений, и я использую API ruby on rails, который я создал для всего остального (например, аутентификация, учетные записи пользователей и т. Д.). Загрузка изображений работает в данный момент в приложении, однако, это немного медленно. (это вызывает тревогу, потому что я единственный, кто его использует. Не то, чтобы в API или Firebase одновременно отправлялась куча HTTP-запросов, это просто я проверял). Вот как я сейчас обрабатываю закачки:
- Пользователь выбирает фотографию для загрузки.
- Фотография преобразуется в строковое представление в формате png и отправляется в базу данных Firebase
- Возвращается URL загрузки фотографии с firebase
- Этот URL затем отправляется в API и присваивается атрибуту
profile_image
этого конкретного пользователя.
И это сделано. Итак, когда пользователь хочет увидеть это фото:
- к API поступил запрос на получение, который отвечает всеми разделяемыми атрибутами пользователя, такими как имена пользователей и т. Д., А также URL-адресом этого изображения.
- затем приложение «загружает» это изображение и помещает его в UIImageView.
Некоторые стручки какао, которые я использую для достижения этой цели:
- Alamofire
- SwiftyJSON
- FirebaseStorage
- SDWebImage
Мой вопрос заключается в том, является ли это хорошим способом приблизиться к загрузке изображений в моих обстоятельствах. Это немного медленно, но я не знаю, связано ли это с тем, что я использую бесплатный веб-хостинг Heroku для своего API или потому, что способ загрузки изображений и их извлечения слишком сложен и может быть упрощено.