Behandeln Sie Fehler für Cloud Storage auf Flutter

Manchmal laufen beim Erstellen einer App die Dinge nicht wie geplant und es tritt ein Fehler auf!

Fangen Sie im Zweifelsfall die von der Funktion ausgelöste Ausnahme ab und sehen Sie, was die Fehlermeldung sagt.

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}");
}

Behandeln Sie Fehlermeldungen

Es gibt eine Reihe von Gründen, warum Fehler auftreten können, einschließlich der Tatsache, dass die Datei nicht vorhanden ist, dass der Benutzer keine Berechtigung zum Zugriff auf die gewünschte Datei hat oder dass der Benutzer den Datei-Upload abgebrochen hat.

Um das Problem richtig zu diagnostizieren und den Fehler zu beheben, finden Sie hier eine vollständige Liste aller Fehler, die unser Kunde melden wird, und wie sie aufgetreten sind.

Code Beschreibung
storage/unknown Ein unbekannter Fehler ist aufgetreten.
storage/object-not-found An der gewünschten Referenz ist kein Objekt vorhanden.
storage/bucket-not-found Für Cloud Storage ist kein Bucket konfiguriert
storage/project-not-found Für Cloud Storage ist kein Projekt konfiguriert
storage/quota-exceeded Das Kontingent für Ihren Cloud Storage-Bucket wurde überschritten. Wenn Sie sich im kostenlosen Tarif befinden, führen Sie ein Upgrade auf einen kostenpflichtigen Tarif durch. Wenn Sie einen kostenpflichtigen Plan haben, wenden Sie sich an den Firebase-Support.
storage/unauthenticated Der Benutzer ist nicht authentifiziert. Bitte authentifizieren Sie sich und versuchen Sie es erneut.
storage/unauthorized Der Benutzer ist nicht berechtigt, die gewünschte Aktion auszuführen. Überprüfen Sie Ihre Sicherheitsregeln, um sicherzustellen, dass sie korrekt sind.
storage/retry-limit-exceeded Das maximale Zeitlimit für einen Vorgang (Hochladen, Herunterladen, Löschen usw.) wurde überschritten. Versuchen Sie es erneut.
storage/invalid-checksum Die Datei auf dem Client stimmt nicht mit der Prüfsumme der vom Server empfangenen Datei überein. Versuchen Sie es erneut.
storage/canceled Der Benutzer hat den Vorgang abgebrochen.
storage/invalid-event-name Ungültiger Ereignisname angegeben. Muss einer von [ running , progress , pause ] sein.
storage/invalid-url Ungültige URL für refFromURL() angegeben. Muss die Form haben: gs://bucket/object oder https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
storage/invalid-argument Das an put() übergebene Argument muss File , Blob oder UInt8 Array sein. Das an putString() übergebene Argument muss ein Raw-, Base64 oder Base64URL String sein.
storage/no-default-bucket In der Eigenschaft storageBucket Ihrer Konfiguration wurde kein Bucket festgelegt.
storage/cannot-slice-blob Tritt häufig auf, wenn die lokale Datei geändert wurde (gelöscht, erneut gespeichert usw.). Versuchen Sie erneut, die Datei hochzuladen, nachdem Sie sichergestellt haben, dass sich die Datei nicht geändert hat.
storage/server-file-wrong-size Die Datei auf dem Client entspricht nicht der Größe der vom Server empfangenen Datei. Versuchen Sie es erneut.