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

處理 Web 上 Cloud Storage 的錯誤

有時,當您構建應用程序時,事情不會按計劃進行並且會發生錯誤!

如有疑問,請檢查錯誤處理程序(或 Promises 的catch()函數),並查看錯誤消息的內容。

如果您已查看錯誤消息並擁有允許您執行操作的雲存儲安全規則,但仍在努力解決錯誤,請訪問我們的支持頁面並告知我們如何提供幫助。

處理錯誤信息

發生錯誤的原因有很多,包括文件不存在、用戶無權訪問所需文件或用戶取消文件上傳。

為了正確診斷問題並處理錯誤,這裡是我們的客戶將提出的所有錯誤及其發生方式的完整列表。

代碼原因
storage/unknown出現未知錯誤。
storage/object-not-found所需引用處不存在對象。
storage/bucket-not-found沒有為 Cloud Storage 配置存儲桶
storage/project-not-found沒有為 Cloud Storage 配置項目
storage/quota-exceeded已超出您的 Cloud Storage 存儲桶的配額。如果您使用的是免費套餐,請升級到付費套餐。如果您使用的是付費計劃,請聯繫 Firebase 支持人員。
storage/unauthenticated用戶未通過身份驗證,請進行身份驗證並重試。
storage/unauthorized用戶無權執行所需的操作,請檢查您的安全規則以確保它們正確無誤。
storage/retry-limit-exceeded已超過操作(上傳、下載、刪除等)的最大時間限制。嘗試重新上傳。
storage/invalid-checksum客戶端上的文件與服務器接收到的文件的校驗和不匹配。嘗試重新上傳。
storage/canceled用戶取消了操作。
storage/invalid-event-name提供的事件名稱無效。必須是 [ `running` , `progress` , `pause` ] 之一
storage/invalid-url提供給refFromURL()的 URL 無效。必須採用以下形式:gs://bucket/object 或 https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
storage/invalid-argument傳遞給put()參數必須是 `File`、`Blob` 或 `UInt8` 數組。傳遞給putString()參數必須是原始字符串、“Base64”或“Base64URL”字符串。
storage/no-default-bucket您的配置的storageBucket屬性中沒有設置存儲桶。
storage/cannot-slice-blob通常在本地文件發生更改(刪除、再次保存等)時發生。確認文件沒有變化後再次嘗試上傳。
storage/server-file-wrong-size客戶端上的文件與服務器接收到的文件大小不匹配。嘗試重新上傳。