Настройка CORS для Firebase Storage
Когда веб-приложение выложено на свой домен, а файлы лежат в бакете Firebase Storage, это два разных источника. Браузер по умолчанию блокирует такие запросы.
CORS (Cross-Origin Resource Sharing) — механизм, которым сервер сообщает браузеру, каким источникам он разрешает обращаться к своим ресурсам. Настроив CORS для бакета, вы разрешаете своему сайту читать из него файлы.
-
Откройте консоль Google Cloud.
-
Запустите Cloud Shell. Нажмите иконку Activate Cloud Shell справа сверху.

Дождитесь загрузки терминала.

-
Выберите проект:
gcloud config set project your-firebase-project-id; -
Опишите и загрузите файл
cors.json.В нём перечислены источники, которым разрешён доступ. Источник — это домен с портом:
"origins": ["https://www.example.com"]Можно ограничить и список заголовков:
"origins": ["https://www.example.com"], "allowedHeaders": ["Content-Type", "Authorization"]Чтобы разрешить чтение всем, но запретить изменение, подойдёт такой файл:
[ { "origin": ["*"], "method": ["GET"], "maxAgeSeconds": 3600 } ]Готовый файл загрузите в Cloud Shell.

Команда
lsпокажет, чтоcors.jsonдействительно на месте. -
Примените правила:
gcloud storage buckets update gs://your-google-storage-bucket-name --cors-file=cors.json -
Проверьте результат:
gcloud storage buckets describe gs://your-google-storage-bucket-name --format="default(cors_config)"В выводе должны быть те же источники и настройки, что и в вашем файле.
Подробности — в документации Firebase про CORS.