Đôi khi, khi bạn phát triển một ứng dụng, mọi việc không diễn ra theo kế hoạch và đã xảy ra lỗi!
Khi nghi ngờ, hãy phát hiện ngoại lệ do hàm gửi và xem thông báo lỗi có nội dung gì.
final storageRef = FirebaseStorage.instance.ref().child("files/uid");
try {
final listResult = await storageRef.listAll();
} on FirebaseException catch (e) {
// Caught an exception from Firebase.
print("Failed with error '${e.code}': ${e.message}");
}
Xử lý thông báo lỗi
Có một số lý do có thể khiến lỗi xảy ra, bao gồm cả nguyên nhân do tệp không tồn tại, người dùng không có quyền truy cập vào tệp mong muốn hoặc người dùng huỷ tải tệp lên.
Để chẩn đoán đúng vấn đề và xử lý lỗi, dưới đây là danh sách đầy đủ tất cả các lỗi mà khách hàng của chúng tôi sẽ mắc phải và cách lỗi xảy ra.
Mã | Mô tả |
---|---|
storage/unknown |
Đã xảy ra lỗi không xác định. |
storage/object-not-found |
Không có đối tượng nào tại tham chiếu mong muốn. |
storage/bucket-not-found |
Chưa định cấu hình bộ chứa nào cho Cloud Storage |
storage/project-not-found |
Chưa có dự án nào được định cấu hình cho Cloud Storage |
storage/quota-exceeded |
Đã vượt quá hạn mức bộ chứa Cloud Storage của bạn. Nếu bạn đang ở cấp miễn phí, hãy nâng cấp lên gói có tính phí. Nếu bạn đang sử dụng gói có tính phí, hãy liên hệ với nhóm hỗ trợ Firebase. |
storage/unauthenticated |
Người dùng chưa được xác thực, vui lòng xác thực và thử lại. |
storage/unauthorized |
Người dùng không được phép thực hiện hành động mong muốn, hãy kiểm tra các quy tắc bảo mật của bạn để đảm bảo các quy tắc đó đúng. |
storage/retry-limit-exceeded |
Đã vượt quá giới hạn thời gian tối đa đối với một thao tác (tải lên, tải xuống, xoá, v.v.). Hãy thử tải video lên lại. |
storage/invalid-checksum |
Tệp trên máy khách không khớp với tổng kiểm tra của tệp mà máy chủ nhận được. Hãy thử tải video lên lại. |
storage/canceled |
Người dùng đã huỷ thao tác. |
storage/invalid-event-name |
Bạn đã cung cấp tên sự kiện không hợp lệ. Phải là một trong các giá trị [running , progress , pause ] |
storage/invalid-url |
Bạn đã cung cấp URL không hợp lệ cho refFromURL() . Phải ở dạng: gs://bucket/object hoặc https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> |
storage/invalid-argument |
Đối số được truyền đến put() phải là Mảng File , Blob hoặc UInt8 . Đối số được chuyển đến putString() phải là chuỗi thô, Base64 hoặc Base64URL . |
storage/no-default-bucket |
Chưa có bộ chứa nào được đặt trong thuộc tính storageBucket của cấu hình của bạn. |
storage/cannot-slice-blob |
Thường xảy ra khi tệp cục bộ đã thay đổi (xoá, lưu lại, v.v.). Hãy thử tải lên lại sau khi xác minh rằng tệp không thay đổi. |
storage/server-file-wrong-size |
Tệp trên ứng dụng không khớp với kích thước của tệp mà máy chủ nhận được. Hãy thử tải video lên lại. |