Google is committed to advancing racial equity for Black communities. See how.
Эта страница переведена с помощью Cloud Translation API.
Switch to English

Начать работу в Интернете

Облачное хранилище для Firebase позволяет загружать и обмениваться пользовательским контентом, таким как изображения и видео, что позволяет встраивать мультимедийный контент в свои приложения. Ваши данные хранятся в корзине Google Cloud Storage , решении для хранения объектов в масштабе эксабайтов с высокой доступностью и глобальной избыточностью. Облачное хранилище позволяет безопасно загружать эти файлы прямо с мобильных устройств и веб-браузеров, легко обрабатывая нестабильные сети.

Предпосылки

Добавьте и настройте Firebase SDK в свое приложение.

Создать сегмент хранилища по умолчанию

  1. На панели навигации консоли Firebase выберите « Хранилище» , затем нажмите « Начать» .

  2. Просмотрите сообщения о защите данных хранилища с помощью правил безопасности. Во время разработки подумайте о настройке ваших правил для общего доступа .

  3. Выберите расположение для сегмента хранилища по умолчанию.

    • Этот параметр местоположения является местоположением ресурса Google Cloud Platform (GCP) по умолчанию для вашего проекта. Обратите внимание, что это местоположение будет использоваться для сервисов GCP в вашем проекте, для которых требуется настройка местоположения, в частности, для вашей базы данных Cloud Firestore и вашего приложения App Engine (что необходимо, если вы используете Cloud Scheduler).

    • Если вы не можете выбрать местоположение, значит, в вашем проекте уже есть местоположение ресурса GCP по умолчанию. Он был установлен либо во время создания проекта, либо при настройке другой службы, требующей настройки местоположения.

    Если вы используете план Blaze, вы можете создать несколько корзин , каждая со своим местоположением .

  4. Щелкните Готово .

Настроить публичный доступ

Облачное хранилище для Firebase предоставляет язык декларативных правил, который позволяет вам определять, как ваши данные должны быть структурированы, как они должны индексироваться и когда ваши данные могут быть прочитаны и записаны. По умолчанию доступ для чтения и записи в хранилище ограничен, поэтому только аутентифицированные пользователи могут читать или записывать данные. Чтобы начать работу без настройки аутентификации , вы можете настроить свои правила для общего доступа .

Это делает Хранилище открытым для всех, даже для людей, не использующих ваше приложение, поэтому обязательно снова ограничьте Хранилище при настройке аутентификации.

Добавьте URL-адрес корзины в приложение

Если он еще не включен, вам нужно добавить URL-адрес сегмента хранилища в объект конфигурации вашего приложения Firebase .

  1. Перейдите на панель управления хранилищем в консоли Firebase .

  2. Щелкните вкладку « Файлы » и посмотрите заголовок средства просмотра файлов.

  3. Скопируйте URL-адрес в буфер обмена. Обычно это project-id .appspot.com .

  4. Для вашего firebaseConfig объекта в вашем приложении, добавьте storageBucket атрибут с ковшом URL:

      // Set the configuration for your app
      // TODO: Replace with your app's config object
      var firebaseConfig = {
        apiKey: '<your-api-key>',
        authDomain: '<your-auth-domain>',
        databaseURL: '<your-database-url>',
        storageBucket: '<your-storage-bucket-url>'
      };
      firebase.initializeApp(firebaseConfig);
    
      // Get a reference to the storage service, which is used to create references in your storage bucket
      var storage = firebase.storage();
    

Вы готовы начать использовать облачное хранилище!

Следующий шаг? Узнайте, как создать ссылку на облачное хранилище .

Advanced Setup

Есть несколько вариантов использования, требующих дополнительной настройки:

Первый вариант использования идеален, если у вас есть пользователи по всему миру и вы хотите хранить их данные рядом с ними. Например, вы можете создавать корзины в США, Европе и Азии для хранения данных для пользователей в этих регионах, чтобы уменьшить задержку.

Второй вариант использования полезен, если у вас есть данные с разными шаблонами доступа. Например: вы можете настроить мультирегиональный или региональный сегмент, в котором хранятся изображения или другой часто используемый контент, а также контейнер ближней или холодной линии, в котором хранятся резервные копии пользователей или другой редко используемый контент.

В любом из этих вариантов использования вы захотите использовать несколько сегментов хранилища .

Третий вариант использования полезен, если вы создаете приложение, такое как Google Диск, которое позволяет пользователям иметь несколько зарегистрированных учетных записей (например, личную учетную запись и рабочую учетную запись). Вы можете использовать собственный экземпляр приложения Firebase для аутентификации каждой дополнительной учетной записи.

Используйте несколько сегментов хранилища

Если вы хотите использовать сегмент хранилища, отличный от указанного выше по умолчанию, или использовать несколько сегментов хранилища в одном приложении, вы можете создать экземпляр firebase.storage который ссылается на ваш пользовательский сегмент:

// Get a non-default Storage bucket
var storage = firebase.app().storage("gs://my-custom-bucket");

Работа с импортированными ведрами

При импорте существующего сегмента облачного хранилища в Firebase вам необходимо предоставить Firebase возможность доступа к этим файлам с gsutil инструмента gsutil , включенного в Google Cloud SDK :

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

Вы можете найти номер своего проекта, как описано во введении к проектам Firebase .

Это не влияет на вновь созданные корзины, поскольку для них установлен контроль доступа по умолчанию, разрешающий Firebase. Это временная мера, и в будущем она будет выполняться автоматически.

Используйте собственное приложение Firebase

Если вы создаете более сложное приложение с использованием настраиваемого firebase.app.App , вы можете создать экземпляр firebase.storage.Storage инициализированный с помощью этого приложения:

// Get the default bucket from a custom firebase.app.App
var storage = customApp.storage();

// Get a non-default bucket from a custom firebase.app.App
var storage = customApp.storage("gs://my-custom-bucket");

Следующие шаги