Czasami podczas tworzenia aplikacji coś nie idzie zgodnie z planem i pojawia się błąd!
W razie wątpliwości przechwyć wyjątek zgłoszony przez funkcję i zobacz, co mówi komunikat o błędzie.
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}");
}
Obsługuj komunikaty o błędach
Istnieje wiele powodów, dla których mogą wystąpić błędy, na przykład nieistniejący plik, brak uprawnień dostępu użytkownika do żądanego pliku lub anulowanie przesyłania pliku przez użytkownika.
Aby prawidłowo zdiagnozować problem i poradzić sobie z błędem, poniżej znajduje się pełna lista wszystkich błędów, które zgłosi nasz klient, oraz sposób ich wystąpienia.
Kod | Opis |
---|---|
storage/unknown | Wystąpił nieznany błąd. |
storage/object-not-found | W żądanym punkcie odniesienia nie istnieje żaden obiekt. |
storage/bucket-not-found | Dla Cloud Storage nie skonfigurowano żadnego zasobnika |
storage/project-not-found | Żaden projekt nie jest skonfigurowany dla Cloud Storage |
storage/quota-exceeded | Limit w Twoim zasobniku Cloud Storage został przekroczony. Jeśli korzystasz z poziomu bezpłatnego, przejdź na plan płatny. Jeśli korzystasz z planu płatnego, skontaktuj się z pomocą techniczną Firebase. |
storage/unauthenticated | Użytkownik nie jest uwierzytelniony. Uwierzytelnij się i spróbuj ponownie. |
storage/unauthorized | Użytkownik nie jest upoważniony do wykonania żądanej akcji. Sprawdź swoje reguły bezpieczeństwa, aby upewnić się, że są prawidłowe. |
storage/retry-limit-exceeded | Przekroczono maksymalny limit czasu operacji (przesyłania, pobierania, usuwania itp.). Spróbuj przesłać ponownie. |
storage/invalid-checksum | Plik na kliencie nie odpowiada sumie kontrolnej pliku otrzymanego przez serwer. Spróbuj przesłać ponownie. |
storage/canceled | Użytkownik anulował operację. |
storage/invalid-event-name | Podano nieprawidłową nazwę wydarzenia. Musi być jednym z [ running , progress , pause ] |
storage/invalid-url | Nieprawidłowy adres URL podany do refFromURL() . Musi mieć postać: gs://bucket/object lub https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> |
storage/invalid-argument | Argumentem przekazanym do put() musi być File , Blob lub UInt8 Array. Argument przekazany do putString() musi być surowym ciągiem znaków, Base64 lub Base64URL . |
storage/no-default-bucket | We właściwości storageBucket Twojej konfiguracji nie ustawiono żadnego zasobnika. |
storage/cannot-slice-blob | Często występuje, gdy plik lokalny został zmieniony (usunięty, ponownie zapisany itp.). Spróbuj przesłać ponownie po sprawdzeniu, że plik się nie zmienił. |
storage/server-file-wrong-size | Plik na kliencie nie odpowiada rozmiarowi pliku otrzymanego przez serwer. Spróbuj przesłać ponownie. |