在前幾天,我們的 API 主要處理「資料」的 CRUD。
但在真實專案裡,除了文字資料,圖片與檔案上傳 也幾乎是必備功能(例如:會員大頭貼、商品圖片、文章配圖)。
這時候,Firebase Storage 就能派上用場啦!
它是 Google 提供的雲端檔案儲存服務,適合開發者快速上手,特別適合 side project 或 prototype。
前往 Firebase Console (點擊右上角 Go to console)
點擊建立新的 Firebase 專案
輸入專案名稱(例如:iThome2025-storage-demo
)
完成建立後,就能進到專案儀表板
在左側選單選 Storage
點擊 升級專案 (這邊會需要連接信用卡帳戶)
點擊連結帳戶 (免費額度:1 GB 儲存空間)
選擇地區(免付費位置)
勾選以正式模式啟動
完成後會自動建立一個 Bucket(其實就是一個儲存檔案的空間)
📌 之後我們的專案就會透過這個 bucket 來存取檔案。
點擊小齒輪選專案設定
選擇服務帳戶 → Firebase Admin SDK → 選 Node.js → 產生新的私密金鑰
點擊產生金鑰後把這份 JSON 檔案保存好,後面會使用到 (金鑰不要存在公開的地方)
JSON 檔案大致如下
在 .env
檔案中設定環境變數:
FIREBASE_SERVICE_ACCOUNT={放入將 JSON 檔案壓縮成一行的資訊}
FIREBASE_STORAGE_BUCKET=ithome2025-storage-demo.firebasestorage.app
1.設定 FIREBASE_SERVICE_ACCOUNT
→ 小技巧 (將 JSON 檔案壓縮成一行)
VSCode → cmd+shift+P → Join Lines
2.設定 FIREBASE_STORAGE_BUCKET
→ 點擊複製資料夾路徑 → 去除 (gs://)
ithome2025-storage-demo.firebasestorage.app
到這裡,我們已經把 Firebase Storage 的基礎環境準備好:
.env
換句話說,我們已經準備好讓專案具備「檔案上傳」的能力啦! 🚀
不過今天還沒寫程式碼,先到這裡收尾。
明天 Day 17 ✨,我們會進入實戰,使用 Node.js + multer 串接 Firebase Storage,實際測試檔案上傳,並取得公開 URL。