Cloud Storage for Firebase cho phép bạn tải lên và chia sẻ nội dung do người dùng tạo, chẳng hạn như dưới dạng hình ảnh và video, cho phép bạn tạo nội dung đa phương tiện của chúng tôi. Dữ liệu của bạn được lưu trữ trong một bộ chứa Google Cloud Storage – một giải pháp lưu trữ đối tượng ở quy mô exabyte với khả năng hoạt động cao và dự phòng toàn cầu. Cloud Storage for Firebase cho phép bạn tải các tệp này lên một cách an toàn ngay trên thiết bị di động và trình duyệt web, giúp xử lý các mạng không ổn định bằng một cách dễ dàng.
Điều kiện tiên quyết
Nếu chưa, hãy cài đặt SDK Firebase JS và khởi chạy Firebase.
Tạo bộ chứa Cloud Storage mặc định
Trong ngăn điều hướng của bảng điều khiển Firebase, hãy chọn Bộ nhớ, rồi nhấp vào Bắt đầu.
Xem thông báo về cách bảo mật dữ liệu của bạn trên Cloud Storage bằng phương thức bảo mật quy tắc. Trong quá trình phát triển, hãy cân nhắc thiết lập quy tắc của bạn đối với quyền truy cập công khai.
Chọn một vị trí cho vị trí mặc định của bạn Bộ chứa Cloud Storage.
Chế độ cài đặt vị trí này là chế độ cài đặt của dự án vị trí tài nguyên mặc định của Google Cloud Platform (GCP). Lưu ý rằng vị trí này sẽ được dùng cho các dịch vụ GCP trong dự án của bạn yêu cầu cài đặt vị trí, cụ thể là Cơ sở dữ liệu Cloud Firestore và Ứng dụng App Engine (bắt buộc nếu bạn sử dụng Cloud Scheduler).
Nếu bạn không thể chọn vị trí, thì tức là dự án của bạn đã có vị trí tài nguyên GCP mặc định. Giá trị này được đặt trong dự án hoặc khi thiết lập một dịch vụ khác yêu cầu cung cấp vị trí cài đặt.
Nếu đang sử dụng Gói linh hoạt, bạn có thể tạo nhiều nhóm, mỗi nhóm có riêng vị trí.
Nhấp vào Xong.
Thiết lập quyền truy cập công khai
Cloud Storage for Firebase cung cấp ngôn ngữ cho quy tắc khai báo để giúp bạn để xác định cấu trúc dữ liệu, cách lập chỉ mục dữ liệu và thời điểm dữ liệu của bạn có thể được đọc và ghi vào. Theo mặc định, quyền đọc và ghi vào Cloud Storage bị hạn chế nên chỉ người dùng đã xác thực mới có thể đọc hoặc ghi . Để bắt đầu mà không thiết lập Authentication, bạn có thể định cấu hình quy tắc cho quyền truy cập công khai.
Việc này làm cho Cloud Storage mở cho bất kỳ ai, ngay cả những người không sử dụng ứng dụng, do đó, hãy nhớ hạn chế Cloud Storage một lần nữa khi bạn thiết lập xác thực.
Thêm URL bộ chứa vào ứng dụng
Nếu chưa có, bạn cần thêm URL của bộ chứa Cloud Storage vào thông tin Đối tượng cấu hình của ứng dụng Firebase.
Chuyển đến Trang tổng quan về bộ nhớ trong bảng điều khiển của Firebase.
Nhấp vào thẻ Files (Tệp), sau đó tìm trong tiêu đề của trình xem tệp.
Sao chép URL vào bảng nhớ tạm. Mã này thường ở dạng
project-id.appspot.com
.Thêm
storageBucket
vào đối tượngfirebaseConfig
trong ứng dụng với URL nhóm của bạn:
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();
Bạn đã sẵn sàng bắt đầu dùng Cloud Storage!
Bước tiếp theo? Tìm hiểu cách tạo Cloud Storage tham chiếu.
Thiết lập nâng cao
Có một số trường hợp sử dụng yêu cầu bạn phải thiết lập thêm:
- Sử dụng Cloud Storage bộ chứa trong nhiều khu vực địa lý
- Sử dụng Cloud Storage bộ chứa trong các lớp bộ nhớ khác
- Sử dụng bộ chứa Cloud Storage với nhiều người dùng đã xác thực trong cùng một ứng dụng
Trường hợp sử dụng đầu tiên là hoàn hảo nếu bạn có người dùng trên khắp thế giới và muốn lưu trữ dữ liệu của họ ở gần họ. Ví dụ: bạn có thể tạo nhóm ở Hoa Kỳ, Châu Âu và Châu Á để lưu trữ dữ liệu cho người dùng ở những khu vực đó nhằm giảm độ trễ.
Trường hợp sử dụng thứ hai sẽ hữu ích nếu bạn có dữ liệu với nhiều mẫu truy cập. Ví dụ: bạn có thể thiết lập một bộ chứa nhiều khu vực hoặc khu vực để lưu trữ hình ảnh hoặc nội dung thường được truy cập khác và một nhóm cận cảnh hoặc vùng lãnh thổ gần nơi lưu trữ bản sao lưu của người dùng hoặc nội dung khác ít khi truy cập.
Trong cả hai trường hợp sử dụng này, bạn nên sử dụng nhiều bộ chứa Cloud Storage.
Trường hợp sử dụng thứ ba là hữu ích nếu bạn đang tạo một ứng dụng, chẳng hạn như Google Drive cho phép người dùng có nhiều tài khoản đăng nhập (ví dụ: tài khoản cá nhân và một tài khoản công việc). Bạn có thể dùng Ứng dụng Firebase tuỳ chỉnh để xác thực từng tài khoản bổ sung.
Sử dụng nhiều bộ chứa Cloud Storage
Nếu bạn muốn sử dụng bộ chứa Cloud Storage khác với bộ chứa mặc định được cung cấp ở trên,
hoặc dùng nhiều bộ chứa Cloud Storage trong một ứng dụng, bạn có thể tạo một phiên bản
trong số firebase.storage
tham chiếu đến bộ chứa tuỳ chỉnh của bạn:
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");
Làm việc với bộ chứa đã nhập
Khi nhập một bộ chứa Cloud Storage hiện có vào Firebase, bạn sẽ
phải cấp cho Firebase khả năng truy cập vào các tệp này bằng cách sử dụng
công cụ gsutil
, có trong
SDK Google Cloud:
gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>
Bạn có thể tìm thấy số dự án của mình như được mô tả trong phần giới thiệu về Dự án Firebase.
Điều này không ảnh hưởng đến các bộ chứa mới tạo, vì các bộ chứa đó có chế độ kiểm soát quyền truy cập mặc định được đặt để cho phép Firebase. Đây chỉ là biện pháp tạm thời và sẽ được thực hiện tự động trong tương lai.
Sử dụng ứng dụng Firebase tùy chỉnh
Nếu đang xây dựng một ứng dụng phức tạp hơn bằng firebase.app.App
tuỳ chỉnh, bạn
có thể tạo một thực thể của firebase.storage.Storage
được khởi chạy bằng ứng dụng đó:
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");
Các bước tiếp theo
Chuẩn bị phát hành ứng dụng:
Bật App Check để đảm bảo rằng chỉ các ứng dụng của bạn mới có thể truy cập vào các bộ chứa bộ nhớ.
Thiết lập ngân sách cảnh báo cho dự án của bạn trong bảng điều khiển Google Cloud.
Theo dõi Việc sử dụng và thanh toán trang tổng quan trong bảng điều khiển Firebase để có được thông tin tổng thể về trên nhiều dịch vụ Firebase. Bạn cũng có thể truy cập Cloud Storage Sử dụng trang tổng quan để xem thêm thông tin sử dụng chi tiết.