Tại sao nên chọn Supabase Storage cho ứng dụng của bạn?
Khi xây dựng ứng dụng web hiện đại, việc quản lý file upload và download thường trở thành một thách thức không nhỏ. Nếu bạn từng phải loay hoay với việc cấu hình server, thiết lập quyền truy cập, hay đảm bảo tính bảo mật cho dữ liệu, bạn sẽ hiểu rõ sự phức tạp của vấn đề này. Supabase Storage ra đời như một giải pháp toàn diện, giúp đơn giản hóa quy trình quản lý file, đồng thời tích hợp mượt mà với hệ sinh thái Supabase.
Các khái niệm cốt lõi của Supabase Storage
Trước khi bắt tay vào sử dụng, hãy làm quen với một số khái niệm cơ bản:
– Storage: Dịch vụ lưu trữ file của Supabase, cho phép bạn upload, download, và quản lý file một cách dễ dàng.
– Bucket: Nơi chứa các file của bạn, tương tự như thư mục trên hệ thống. Mỗi bucket có thể chứa nhiều file và thư mục con.
– Access Control List (ACL): Cơ chế phân quyền, giúp bạn kiểm soát ai có thể truy cập, upload, hay xóa file trong bucket.
Hướng dẫn từng bước: Upload và Download file với Supabase Storage
Bước 1: Tạo Bucket
Để bắt đầu, bạn cần tạo một bucket để chứa file. Bạn có thể thực hiện điều này thông qua Supabase Dashboard hoặc bằng lệnh SQL. Ví dụ, tạo một bucket công khai để chứa hình ảnh:
select storage.create_bucket('public', 'Public Images', 'bucket_public');Bước 2: Upload file
Supabase cung cấp nhiều cách để upload file:
– Upload thông qua Dashboard: Tiện lợi cho việc upload thủ công.
– Upload qua API: Dùng JavaScript hoặc các ngôn ngữ khác để upload file từ ứng dụng của bạn.
– Upload qua SQL: Dùng lệnh SQL để upload file trực tiếp vào database.
Dưới đây là ví dụ upload file bằng JavaScript:
import { createClient } from '@supabase/supabase-js'
const supabase = createClient('YOUR_SUPABASE_URL', 'YOUR_SUPABASE_KEY')
const handleUpload = async (file) => {
const filePath = public/${file.name}
const { data, error } = await supabase.storage
.from('public')
.upload(filePath, file)
if (error) throw error
return data
}