Đôi khi, khi bạn đang tạo một ứng dụng, mọi thứ không diễn ra như dự kiến và một lỗi sẽ xảy ra!
Khi không chắc chắn, hãy nắm bắt ngoại lệ do hàm gửi và xem thông báo lỗi.
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 khiến lỗi có thể xảy ra, bao gồm cả việc 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 cách vấn đề và xử lý lỗi, sau đây là danh sách đầy đủ tất cả lỗi mà ứng dụng của chúng tôi sẽ đưa ra và cách chúng 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ồn tại tại tệp 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 |
Không có dự án nào được định cấu hình cho Cloud Storage |
storage/quota-exceeded |
Hạn mức trên bộ chứa Cloud Storage của bạn đã vượt quá. Nếu bạn đang sử dụng gói giá Spark, hãy cân nhắc nâng cấp lên gói giá linh hoạt Blaze (trả phí theo mức sử dụng). Nếu bạn đã sử dụng gói giá Blaze, hãy liên hệ với Nhóm hỗ trợ Firebase. Lưu ý quan trọng: Kể từ |
storage/unauthenticated |
Người dùng chưa được xác thực, vui lòng xác thực rồi 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 để đảm bảo chúng chính xác. |
storage/retry-limit-exceeded |
Đã vượt quá giới hạn thời gian tối đa cho một thao tác (tải lên, tải xuống, xoá, v.v.). Hãy thử tải 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 của tệp mà máy chủ nhận được. Hãy thử tải 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 |
URL không hợp lệ được cung cấp 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 vào put() phải là Mảng File , Blob hoặc UInt8 . Đối số được truyền vào putString() phải là một chuỗi thô, Base64 hoặc Base64URL . |
storage/no-default-bucket |
Bạn chưa đặt bộ chứa nào trong thuộc tính storageBucket của cấu hình. |
storage/cannot-slice-blob |
Thường xảy ra khi tệp cục bộ đã thay đổi (bị 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 máy khách không khớp với kích thước tệp mà máy chủ nhận được. Hãy thử tải lên lại. |