بدء استخدام Cloud Storage على الويب

يتيح لك Cloud Storage for Firebase تحميل المحتوى من إنشاء المستخدمين ومشاركته، مثل كصور ومقاطع فيديو، مما يتيح لك إنشاء محتوى وسائط متعددة تفاعلية في التطبيقات. يتم تخزين بياناتك في حزمة Google Cloud Storage: حل لتخزين العناصر على مقياس إكسابايت، مع توفُّر عالٍ وفي جميع أنحاء العالم التكرار. يتيح لك Cloud Storage for Firebase تحميل هذه الملفات بأمان. من الأجهزة المحمولة ومتصفحات الويب، مما يؤدي إلى التعامل مع الشبكات غير المستقرة والسهولة.

المتطلبات الأساسية

ثبِّت حزمة تطوير البرامج (SDK) لـ Firebase JS وفعِّل Firebase، إذا لم يسبق لك إجراء ذلك.

إنشاء حزمة Cloud Storage تلقائية

  1. من مساحة الروابط في وحدة تحكّم Firebase، اختَر مساحة التخزين. ثم انقر على البدء.

  2. يمكنك مراجعة الرسالة حول تأمين بياناتك في "Cloud Storage" باستخدام الأمان. القواعد. أثناء التطوير، ننصحك بإعداد قواعد الوصول العلني.

  3. اختَر موقعًا جغرافيًا لموقعك الجغرافي التلقائي. حزمة Cloud Storage

    • إنّ إعداد الموقع الجغرافي هذا هو إعدادات مشروعك الموقع الجغرافي التلقائي لموارد Google Cloud Platform (GCP) تجدر الإشارة إلى أنّه سيتم استخدام هذا الموقع الجغرافي لخدمات GCP في مشروعك. التي تتطلب إعدادًا للموقع الجغرافي، وتحديدًا، قاعدة بيانات Cloud Firestore تطبيق App Engine (والذي يكون مطلوبًا في حال استخدام Cloud Scheduler).

    • إذا لم تتمكّن من اختيار موقع جغرافي، يعني ذلك أنّ مشروعك لديه موقع جغرافي تلقائي لمورد Google Cloud Platform. تم ضبطه إما أثناء إنشاء المشروع أو عند إعداد خدمة أخرى تتطلّب تحديد الموقع الجغرافي.

    إذا كنت تستخدم خطة Blaze، يمكنك إنشاء حِزم متعددة، ولكل حزمة موقع جغرافي خاص بها.

  4. انقر على تم.

إعداد إتاحة الوصول للجميع

توفّر Cloud Storage for Firebase لغة قواعد تعريفية تتيح لك لتحديد كيف يجب تنظيم بياناتك، وكيف يجب فهرستها، ومتى يجب يمكن قراءة البيانات منها والكتابة إليها. يتم تلقائيًا حظر الوصول للقراءة والكتابة إلى Cloud Storage حتى لا يتمكّن سوى المستخدمين الذين تم مصادقة هويتهم من قراءة data أو كتابتها. للبدء بدون إعداد Authentication، يمكنك: ضبط القواعد للوصول العام

هذا يجعل Cloud Storage متاحًا لأي شخص، حتى الأشخاص الذين لا يستخدمون تطبيقك، لذا يُرجى التأكّد من تقييد Cloud Storage مرة أخرى عند إعداد المصادقة.

إضافة عنوان URL للحزمة إلى تطبيقك

إذا لم يسبق إدراج عنوان URL الخاص بحزمة المنتجات، يجب إضافة عنوان URL الخاص بحزمة Cloud Storage إليه. على كائن الإعداد لتطبيق Firebase.

  1. انتقِل إلى لوحة بيانات مساحة التخزين في وحدة تحكُّم Firebase.

  2. انقر على علامة التبويب الملفات، ثم ابحث في رأس عارض الملفات.

  3. انسخ عنوان URL إلى الحافظة. عادة ما يكون في شكل project-id.appspot.com

  4. أضِف storageBucket إلى عنصر firebaseConfig في تطبيقك. مع عنوان URL للحزمة:

Web

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

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

يمكنك الآن بدء استخدام Cloud Storage

الخطوة التالية؟ تعرّف على كيفية إنشاء Cloud Storage المرجع.

الإعداد المتقدّم

هناك بعض حالات الاستخدام التي تتطلب إعدادًا إضافيًا:

تعد حالة الاستخدام الأولى مثالية إذا كان لديك مستخدمون في جميع أنحاء العالم، وتريد وتخزين بياناتهم بالقرب منها. على سبيل المثال، يمكنك إنشاء مجموعات في الولايات المتحدة أوروبا وآسيا لتخزين البيانات للمستخدمين في هاتين المنطقتين لتقليل وقت الاستجابة

وتكون حالة الاستخدام الثانية مفيدة إذا كانت لديك بيانات بأنماط وصول مختلفة. على سبيل المثال: يمكنك إعداد حزمة متعدّدة المناطق أو إقليمية لتخزين والصور أو أي محتوى آخر يتم الوصول إليه بشكل متكرر، بالإضافة إلى حزمة تخزن النسخ الاحتياطية للمستخدمين أو غيره من المحتوى الذي يتم الوصول إليه بشكل غير متكرر.

في أي من حالات الاستخدام هذه، ستحتاج إلى استخدام حِزم Cloud Storage متعدّدة

أما حالة الاستخدام الثالثة فهي مفيدة إذا كنت تنشئ تطبيقًا، مثل Google Drive، يتيح للمستخدمين امتلاك عدة حسابات تم تسجيل الدخول إليها (على سبيل المثال، حساب شخصي وحساب العمل). يمكنك استخدام تطبيق Firebase مخصّص. لمصادقة كل حساب إضافي.

استخدام حِزم Cloud Storage متعدّدة

إذا كنت تريد استخدام حزمة Cloud Storage غير الحزمة التلقائية المتوفّرة أعلاه، أو استخدام عدة حِزم Cloud Storage في تطبيق واحد، يمكنك إنشاء مثيل من firebase.storage تشير إلى حزمتك المخصَّصة:

Web

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

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

العمل مع الحِزم المستورَدة

عند استيراد حزمة Cloud Storage حالية إلى Firebase، عليك منح Firebase إمكانية الوصول إلى هذه الملفات باستخدام gsutil، المضمنة في حزمة تطوير البرامج (SDK) Google Cloud:

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 تم إعداده باستخدام هذا التطبيق:

Web

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

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

الخطوات التالية