Flutter web — не удалось загрузить сетевой образ

#firebase #flutter #firebase-storage #flutter-web #flutter-image

#firebase #флаттер #firebase-хранилище #flutter-web #flutter-image

Вопрос:

В корзине хранилища firebase моего проекта есть изображения, которые я хотел бы отобразить в пользовательском интерфейсе. Я следовал инструкциям из другого ответа stack overflow, но у меня это не сработало.

Чтобы иметь возможность отображать ваши изображения из хранилища Firebase на веб-странице Flutter, вы должны настроить свои данные для CORS.

Откройте консоль GCP, выберите свой проект и запустите сеанс облачного терминала, нажав кнопку>_ icon на верхней панели навигации. Нажмите кнопку открыть редактор (значок карандаша), затем создайте файл cors.json. Запустите gsutil и установите cors.json gs://your-bucket Файл cors.json должен выглядеть следующим образом:

[ { «origin»: [«*»], «method»: [«GET»], «maxAgeSeconds»: 3600 } ] Я установил для источника значение *, что означает, что каждый веб-сайт может отображать ваши изображения. Но вы также можете вставить туда домен своего веб-сайта, чтобы ограничить доступ.

Если вам нужна дополнительная информация: https://cloud.google.com/storage/docs/configuring-cors

Я вижу на облачной платформе свой проект и обновление корзины, но получаю то же сообщение об ошибке:

 Failed to load network image.
Image URL: gs://---------------------------------.png
Trying to load an image from another domain? Find answers at:
https://flutter.dev/docs/development/platform-integration/web-image
 

Я также следил за руководством этого парня о том, как получить доступ к вашим образам хранилища. Он использовал виджет Image.network, что я и делаю. У меня это просто не работает. Скриншот ниже — это то, что я вижу. Черные ящики — это URL-адреса из хранилища.

введите описание изображения здесь

Комментарии:

1. та же проблема и для меня. Пожалуйста, предложите мне, если у вас есть какое-то решение для этого.

Ответ №1:

Используйте средство визуализации HTML

Запустите это в своем терминале

 flutter run -d chrome --web-renderer html
 

Ответ №2:

Изображение появилось после выполнения следующего.

flutter build web —release —web-средство визуализации html

тем не менее, у меня все еще есть проблема с загрузкой / обрезкой изображения из flutter web в firebase

Комментарии:

1. это означает, что при добавлении изображения вы должны сначала запустить этот тег, а затем добавить изображение, иначе оно не будет работать, есть ли какое-либо правильное решение навсегда?

2. вам необходимо создать приложение с изображением. затем вы запускаете flutter web, при сборке приложения используйте командную строку — flutter build web —release —web-renderer html

3. я использую стабильную версию flutter web, разве она не идеальна?

4. эта инструкция поможет вам … medium.com/flutter-community /…