Catch up on highlights from Firebase at Google I/O 2023. Learn more

Web'de Bulut Depolamayı kullanmaya başlayın

Firebase için Bulut Depolama, uygulamalarınıza zengin medya içeriği oluşturmanıza olanak tanıyan resimler ve video gibi kullanıcı tarafından oluşturulan içeriği yüklemenize ve paylaşmanıza olanak tanır. Verileriniz, yüksek kullanılabilirliğe ve küresel yedekliliğe sahip, eksabayt ölçekli bir nesne depolama çözümü olan bir Google Cloud Storage paketinde depolanır. Firebase için Bulut Depolama, bu dosyaları doğrudan mobil cihazlardan ve web tarayıcılarından güvenli bir şekilde yüklemenize olanak tanıyarak düzensiz ağları kolaylıkla halleder.

Önkoşullar

Henüz yapmadıysanız, Firebase JS SDK'yı kurun ve Firebase'i başlatın .

Varsayılan bir Bulut Depolama paketi oluşturun

  1. Firebase konsolunun gezinti bölmesinden, Depolama'yı seçin ve ardından Başlayın'ı tıklayın.

  2. Güvenlik kurallarını kullanarak Bulut Depolama verilerinizin güvenliğini sağlamaya ilişkin mesajı inceleyin. Geliştirme sırasında, kurallarınızı genel erişim için ayarlamayı düşünün.

  3. Varsayılan Bulut Depolama grubunuz için bir konum seçin.

    • Bu konum ayarı, projenizin varsayılan Google Cloud Platform (GCP) kaynak konumudur . Bu konumun, projenizde konum ayarı gerektiren GCP hizmetleri, özellikle Cloud Firestore veritabanınız ve App Engine uygulamanız (Cloud Scheduler kullanıyorsanız gereklidir) için kullanılacağını unutmayın.

    • Bir konum seçemiyorsanız, projenizde zaten varsayılan bir GCP kaynak konumu vardır. Proje oluşturma sırasında veya konum ayarı gerektiren başka bir hizmet kurulurken ayarlandı.

    Blaze planını kullanıyorsanız, her biri kendi konumuna sahip birden çok grup oluşturabilirsiniz .

  4. Bitti'yi tıklayın.

Genel erişimi ayarla

Cloud Storage for Firebase, verilerinizin nasıl yapılandırılması gerektiğini, nasıl dizine eklenmesi gerektiğini ve verilerinizden ne zaman okunup yazılabileceğini tanımlamanıza olanak tanıyan bildirime dayalı bir kurallar dili sağlar. Varsayılan olarak, Cloud Storage'a okuma ve yazma erişimi kısıtlanmıştır, böylece yalnızca kimliği doğrulanmış kullanıcılar veri okuyabilir veya yazabilir. Kimlik Doğrulamayı kurmadan başlamak için, kurallarınızı genel erişim için yapılandırabilirsiniz .

Bu, Bulut Depolamayı uygulamanızı kullanmayan kişiler dahil herkese açık hale getirir, bu nedenle kimlik doğrulamayı ayarlarken Bulut Depolamanızı tekrar kısıtladığınızdan emin olun.

Grup URL'nizi uygulamanıza ekleyin

Henüz eklenmemişse Cloud Storage grup URL'nizi Firebase uygulamanızın yapılandırma nesnesine eklemeniz gerekir.

  1. Firebase konsolunda Depolama panonuza gidin.

  2. Dosyalar sekmesini tıklayın, ardından dosya görüntüleyicinin başlığına bakın.

  3. URL'yi panonuza kopyalayın. Genellikle project-id .appspot.com biçimindedir.

  4. Uygulamanızdaki firebaseConfig nesnenize, grup URL'nizle birlikte storageBucket özelliğini ekleyin:

Web modüler API

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

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
  storageBucket: ''
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);


// Initialize Cloud Storage and get a reference to the service
const storage = getStorage(app);

Web ad alanlı API

import firebase from "firebase/app";
import "firebase/compat/storage";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
  storageBucket: '[your-storage-bucket-url]'
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);


// Initialize Cloud Storage and get a reference to the service
const storage = firebase.storage();

Bulut Depolamayı kullanmaya başlamaya hazırsınız!

Sonraki adım? Bulut Depolama referansı oluşturmayı öğrenin.

Gelişmiş kurulum

Ek kurulum gerektiren birkaç kullanım durumu vardır:

Dünyanın her yerinden kullanıcılarınız varsa ve verilerini onlara yakın bir yerde depolamak istiyorsanız, ilk kullanım durumu mükemmeldir. Örneğin, gecikmeyi azaltmak amacıyla bu bölgelerdeki kullanıcılara yönelik verileri depolamak için ABD, Avrupa ve Asya'da gruplar oluşturabilirsiniz.

Farklı erişim modellerine sahip verileriniz varsa, ikinci kullanım durumu yararlıdır. Örneğin: resimleri veya diğer sık ​​erişilen içeriği depolayan çok bölgeli veya bölgesel bir grup ve kullanıcı yedeklerini veya diğer seyrek erişilen içeriği depolayan bir yakın hat veya soğuk hat grubu oluşturabilirsiniz.

Bu kullanım durumlarından herhangi birinde, birden çok Cloud Storage grubu kullanmak isteyeceksiniz.

Üçüncü kullanım durumu, Google Drive gibi, kullanıcıların birden çok oturum açmış hesaba (örneğin, bir kişisel hesap ve bir iş hesabı) sahip olmasına izin veren bir uygulama oluşturuyorsanız kullanışlıdır. Her ek hesabın kimliğini doğrulamak için özel bir Firebase Uygulaması örneği kullanabilirsiniz .

Birden fazla Bulut Depolama paketi kullanın

Yukarıda sağlanan varsayılandan farklı bir Bulut Depolama grubu kullanmak veya tek bir uygulamada birden çok Bulut Depolama grubu kullanmak istiyorsanız, özel grubunuza başvuran bir firebase.storage örneği oluşturabilirsiniz:

Web modular API

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

Web namespaced API

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

İçe aktarılan paketlerle çalışma

Mevcut bir Cloud Storage paketini Firebase'e aktarırken, Google Cloud SDK'da bulunan gsutil aracını kullanarak Firebase'e bu dosyalara erişme yetkisi vermeniz gerekir :

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

Proje numaranızı Firebase projelerinin girişinde açıklandığı gibi bulabilirsiniz.

Bu, Firebase'e izin verecek varsayılan erişim kontrolüne sahip olduklarından, yeni oluşturulan grupları etkilemez. Bu geçici bir önlemdir ve gelecekte otomatik olarak gerçekleştirilecektir.

Özel bir Firebase Uygulaması kullanın

Özel bir firebase.app.App kullanarak daha karmaşık bir uygulama oluşturuyorsanız, bu uygulamayla başlatılan bir firebase.storage.Storage örneği oluşturabilirsiniz:

Web modular API

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

Web namespaced API

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

Sonraki adımlar