Иногда при создании приложения что-то идет не по плану и возникает ошибка!
Если вы сомневаетесь, перехватите исключение, выданное функцией, и посмотрите, что говорится в сообщении об ошибке.
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}");
}
Обработка сообщений об ошибках
Существует ряд причин возникновения ошибок, включая отсутствие файла, отсутствие у пользователя прав доступа к нужному файлу или отмену пользователем загрузки файла.
Чтобы правильно диагностировать проблему и устранить ошибку, ниже приведен полный список всех ошибок, о которых сообщит наш клиент, и описание того, как они возникли.
Код | Описание |
---|---|
storage/unknown | Произошла неизвестная ошибка. |
storage/object-not-found | По указанной ссылке не существует ни одного объекта. |
storage/bucket-not-found | Для облачного хранилища не настроено ни одно хранилище. |
storage/project-not-found | Ни один проект не настроен для облачного хранилища. |
storage/quota-exceeded | Превышена квота на ваш контейнер Cloud Storage . Если вы используете тарифный план Spark, рассмотрите возможность обновления до тарифного плана Blaze с оплатой по мере использования . Если вы уже используете тарифный план Blaze, обратитесь в службу поддержки Firebase. Важно : с |
storage/unauthenticated | Пользователь не аутентифицирован, пожалуйста, пройдите аутентификацию и повторите попытку. |
storage/unauthorized | Пользователь не авторизован для выполнения требуемого действия, проверьте правила безопасности, чтобы убедиться в их правильности. |
storage/retry-limit-exceeded | Превышен максимальный лимит времени на операцию (загрузка, скачивание, удаление и т. д.). Попробуйте загрузить еще раз. |
storage/invalid-checksum | Файл на клиенте не соответствует контрольной сумме файла, полученного сервером. Попробуйте загрузить еще раз. |
storage/canceled | Пользователь отменил операцию. |
storage/invalid-event-name | Указано неверное имя события. Должно быть одно из [ running , progress , pause ] |
storage/invalid-url | Неверный URL-адрес, предоставленный для refFromURL() . Должен иметь вид: gs://bucket/object или https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> |
storage/invalid-argument | Аргумент, переданный в put() должен быть File , Blob или UInt8 Array. Аргумент, переданный в putString() должен быть raw, Base64 или Base64URL строкой. |
storage/no-default-bucket | В свойстве storageBucket вашей конфигурации не задан контейнер. |
storage/cannot-slice-blob | Обычно происходит, когда локальный файл был изменен (удален, сохранен снова и т. д.). Попробуйте загрузить снова, убедившись, что файл не изменился. |
storage/server-file-wrong-size | Файл на клиенте не соответствует размеру файла, полученного сервером. Попробуйте загрузить еще раз. |