Catch up on everthing we announced at this year's Firebase Summit. Learn more

Zacznij korzystać z Cloud Storage w internecie

Cloud Storage dla Firebase umożliwia przesyłanie i udostępnianie treści generowanych przez użytkowników, takich jak obrazy i filmy, co pozwala na tworzenie treści multimedialnych w aplikacjach. Twoje dane są przechowywane w Google Cloud Storage wiadro - skalę exabyte rozwiązania pamięci masowej o wysokiej dostępności obiektu i globalnego redundancji. Cloud Storage dla Firebase umożliwia bezpieczne przesyłanie tych plików bezpośrednio z urządzeń mobilnych i przeglądarek internetowych, z łatwością obsługując niestabilne sieci.

Warunki wstępne

Dodaj i skonfiguruj Firebase SDK w swojej aplikacji.

Utwórz domyślny zasobnik Cloud Storage

  1. W okienku nawigacyjnym konsoli Firebase wybierz Storage, a następnie kliknij przycisk Rozpocznij.

  2. Zapoznaj się z komunikatem o zabezpieczaniu danych Cloud Storage za pomocą reguł zabezpieczeń. Podczas rozwoju, należy rozważyć konfigurowania zasady publicznego dostępu .

  3. Wybierz lokalizację dla swojego domyślnego Cloud Storage.

    • To ustawienie jest lokalizacja Twojego projektu domyślny Google Cloud Platform (GCP) lokalizacja zasobów . Zauważ, że ta lokalizacja zostanie wykorzystany na usługi GCP w projekcie, które wymagają ustawienie lokalizacji, konkretnie swojej Chmura FireStore bazy i swojej App Engine aplikacji (co jest wymagane w przypadku korzystania Chmura Scheduler).

    • Jeśli nie możesz wybrać lokalizacji, oznacza to, że Twój projekt ma już domyślną lokalizację zasobu GCP. Została ustawiona albo podczas tworzenia projektu, albo podczas konfigurowania innej usługi, która wymaga ustawienia lokalizacji.

    Jeśli jesteś na planie Blaze, można utworzyć wiele wiader , każdy z własnym miejscu .

  4. Kliknij Gotowe.

Skonfiguruj dostęp publiczny

Cloud Storage dla Firebase udostępnia deklaratywny język reguł, który umożliwia zdefiniowanie struktury danych, sposobu ich indeksowania oraz czasu odczytywania i zapisywania danych. Domyślnie dostęp do odczytu i zapisu w Cloud Storage jest ograniczony, więc tylko uwierzytelnieni użytkownicy mogą odczytywać i zapisywać dane. Aby rozpocząć bez konfigurowania uwierzytelniania , można skonfigurować zasady publicznego dostępu .

Dzięki temu Cloud Storage jest dostępny dla każdego, nawet dla osób, które nie korzystają z Twojej aplikacji, więc pamiętaj o ponownym ograniczeniu Cloud Storage podczas konfigurowania uwierzytelniania.

Dodaj adres URL zasobnika do swojej aplikacji

Jeśli nie jest już włączone, trzeba dodać wiadro URL Cloud Storage do Twojego obiektu konfiguracji aplikacji Firebase użytkownika .

  1. Przejdź do deski rozdzielczej Schowki w konsoli Firebase .

  2. Kliknij kartę Pliki, a następnie spójrz w nagłówku przeglądarki plików.

  3. Skopiuj adres URL do schowka. Jest to zazwyczaj w formie project-id .appspot.com .

  4. Do swojej firebaseConfig obiektu w aplikacji, należy dodać storageBucket atrybut z wiadra URL:

    Wersja internetowa 9

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

    Wersja internetowa 8

    // 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();

Możesz zacząć korzystać z Cloud Storage!

Następny krok? Dowiedz się, jak utworzyć odwołanie Cloud Storage .

Ustawienia zaawansowane

Istnieje kilka przypadków użycia, które wymagają dodatkowej konfiguracji:

Pierwszy przypadek użycia jest idealny, jeśli masz użytkowników na całym świecie i chcesz przechowywać ich dane w ich pobliżu. Możesz na przykład utworzyć zasobniki w Stanach Zjednoczonych, Europie i Azji, aby przechowywać dane użytkowników w tych regionach, aby skrócić czas oczekiwania.

Drugi przypadek użycia jest pomocny, jeśli masz dane o różnych wzorcach dostępu. Na przykład: możesz skonfigurować wieloregionalny lub regionalny zasobnik, który przechowuje zdjęcia lub inną często dostępną zawartość, oraz zasobnik nearline lub coldline, który przechowuje kopie zapasowe użytkowników lub inne rzadko używane treści.

W każdym z tych przypadków użycia, będziemy chcieli, aby korzystać z wielu wiadra Cloud Storage .

Trzeci przypadek użycia jest przydatny, jeśli tworzysz aplikację, taką jak Dysk Google, która umożliwia użytkownikom zalogowanie się na wiele kont (na przykład konto osobiste i konto służbowe). Można użyć niestandardowego Firebase App instancji w celu uwierzytelnienia każdego dodatkowego konta.

Użyj wielu zasobników Cloud Storage

Jeśli chcesz używać Cloud Storage wiadro inny niż domyślny podany powyżej, lub wykorzystać kilka wiader Cloud Storage w jednej aplikacji, można utworzyć instancję firebase.storage że referencje niestandardowe wieloczynnościowy:

Wersja internetowa 9

import { getApp } from "firebase/app";
import { getStorage } from "firebase/storage";

// Get a non-default Storage bucket
const firebaseApp = getApp();
const storage = getStorage(firebaseApp, "gs://my-custom-bucket");

Wersja internetowa 8

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

Praca z importowanymi zasobnikami

Podczas importowania istniejącego Cloud Storage do Firebase, trzeba przyznać Firebase możliwość dostępu do tych plików za pomocą gsutil narzędzie, zawarte w Google Cloud SDK :

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

Można znaleźć numer projektu zgodnie z opisem w wstępie do projektów Firebase .

Nie ma to wpływu na nowo utworzone zasobniki, ponieważ mają one domyślną kontrolę dostępu, która zezwala na Firebase. Jest to środek tymczasowy i będzie wykonywany automatycznie w przyszłości.

Użyj niestandardowej aplikacji Firebase

Jeśli budowanie bardziej skomplikowanych aplikacji przy użyciu niestandardowego firebase.app.App , można utworzyć instancję firebase.storage.Storage zainicjowany z tej aplikacji:

Wersja internetowa 9

import { getStorage } from "firebase/storage";

// Get the default bucket from a custom firebase.app.App
const storage1 = getStorage(customApp);

// Get a non-default bucket from a custom firebase.app.App
const storage2 = getStorage(customApp, "gs://my-custom-bucket");

Wersja internetowa 8

// 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");

Następne kroki