Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

網絡入門

Cloud Storage for Firebase允許您上傳和共享用戶生成的內容,例如圖像和視頻,從而可以將富媒體內容構建到您的應用程序中。您的數據存儲在Google Cloud Storage存儲桶中,這是一個具有高可用性和全局冗餘的EB級對象存儲解決方案。通過Cloud Storage,您可以直接從移動設備和Web瀏覽器安全地上傳這些文件,從而輕鬆處理不合格的網絡。

先決條件

將Firebase SDK添加並配置到您的應用中。

創建一個默認的存儲桶

  1. Firebase控制台的導航窗格中,選擇“存儲” ,然後單擊“入門”

  2. 查看有關使用安全規則保護存儲數據的消息。在開發期間,請考慮設置您的公共訪問規則

  3. 選擇默認存儲分區的位置

    • 此位置設置是您項目的默認Google Cloud Platform(GCP)資源位置。請注意,此位置將用於需要位置設置的項目中的GCP服務,特別是Cloud Firestore數據庫和App Engine應用程序(如果使用Cloud Scheduler,則是必需的)。

    • 如果您無法選擇位置,則您的項目已經具有默認的GCP資源位置。它是在項目創建期間設置的,或者是在設置另一個需要位置設置的服務時設置的。

    如果您使用的是Blaze計劃,則可以創建多個存儲桶,每個存儲桶都有自己的位置

  4. 單擊完成

設置公共訪問

Cloud Storage for Firebase提供了一種聲明性規則語言,可讓您定義數據的結構方式,索引方式以及何時可以讀寫數據。默認情況下,對存儲的讀寫訪問受到限制,因此只有經過身份驗證的用戶才能讀取或寫入數據。要開始而不設置身份驗證,您可以配置公共訪問規則

這確實使Storage對任何人,甚至是不使用您的應用程序的人都開放,因此請確保在設置身份驗證時再次限制您的Storage。

將您的存儲桶網址添加到您的應用中

如果尚未包含,則需要將存儲桶URL添加到Firebase應用程序的配置對像中

  1. Firebase控制台中轉到“存儲”儀表板。

  2. 單擊文件選項卡,然後在文件查看器的標題中查找。

  3. 將URL複製到剪貼板。通常採用project-id .appspot.com的形式。

  4. 為了您的firebaseConfig在你的應用程序對象,添加storageBucket屬性與你鬥網址:

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

您已經準備好開始使用Cloud Storage!

下一步?了解如何創建Cloud Storage參考

進階設定

有一些用例需要額外的設置:

如果您的用戶遍布世界各地,並希望將他們的數據存儲在他們附近,則第一個用例是完美的。例如,您可以在美國,歐洲和亞洲創建存儲桶,以存儲這些區域中用戶的數據,以減少延遲。

如果您的數據具有不同的訪問模式,則第二個用例會很有幫助。例如:您可以設置存儲圖片或其他經常訪問的內容的多區域或區域存儲桶,以及存儲用戶備份或其他不經常訪問的內容的近線或冷線存儲桶。

在這兩種用例中,您都想使用多個存儲桶

如果您要構建一個應用程序(例如Google雲端硬盤),則第三個用例非常有用,該應用程序允許用戶擁有多個登錄帳戶(例如,個人帳戶和工作帳戶)。您可以使用自定義Firebase App實例對每個其他帳戶進行身份驗證。

使用多個存儲桶

如果您要使用上面提供的默認存儲桶以外的其他存儲桶,或者在單個應用程序中使用多個存儲桶,則可以創建引用您的自定義存儲桶的firebase.storage實例:

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

使用進口桶

將現有的Cloud Storage存儲分區導入Firebase時,您必須授予Firebase使用Google Cloud SDK中包含的gsutil工具訪問這些文件的能力:

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

下一步