Il arrive parfois que les choses ne se passent pas comme prévu lors de la création d'une application et qu'une erreur se produise.
En cas de doute, détectez l'exception générée par la fonction et consultez le message d'erreur.
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}");
}
Gérer les messages d'erreur
Plusieurs raisons peuvent expliquer ces erreurs : le fichier n'existe pas, l'utilisateur n'est pas autorisé à accéder au fichier souhaité ou il a annulé l'importation du fichier.
Pour diagnostiquer correctement le problème et gérer l'erreur, voici la liste complète de toutes les erreurs que notre client peut générer, ainsi que la façon dont elles se sont produites.
Code | Description |
---|---|
storage/unknown |
Une erreur inconnue s'est produite. |
storage/object-not-found |
Aucun objet n'existe à la référence souhaitée. |
storage/bucket-not-found |
Aucun bucket n'est configuré pour Cloud Storage |
storage/project-not-found |
Aucun projet n'est configuré pour Cloud Storage |
storage/quota-exceeded |
Le quota de votre bucket Cloud Storage a été dépassé. Si vous utilisez le forfait Spark, envisagez de passer au forfait Blaze avec paiement à l'usage. Si vous disposez déjà du forfait Blaze, contactez l'assistance Firebase. Important : À partir du |
storage/unauthenticated |
L'utilisateur n'est pas authentifié. Veuillez l'authentifier et réessayer. |
storage/unauthorized |
L'utilisateur n'est pas autorisé à effectuer l'action souhaitée. Vérifiez que vos règles de sécurité sont correctes. |
storage/retry-limit-exceeded |
Le délai maximal pour une opération (importation, téléchargement, suppression, etc.) a été dépassé. Réessayez d'importer la vidéo. |
storage/invalid-checksum |
Le fichier sur le client ne correspond pas à la somme de contrôle du fichier reçu par le serveur. Réessayez d'importer la vidéo. |
storage/canceled |
L'utilisateur a annulé l'opération. |
storage/invalid-event-name |
Un nom d'événement non valide a été fourni. Doit être l'une des valeurs suivantes : [running , progress , pause ] |
storage/invalid-url |
URL non valide fournie à refFromURL() . Doit être au format gs://bucket/object ou https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> . |
storage/invalid-argument |
L'argument transmis à put() doit être un tableau File , Blob ou UInt8 . L'argument transmis à putString() doit être une chaîne brute, Base64 ou Base64URL . |
storage/no-default-bucket |
Aucun bucket n'a été défini dans la propriété storageBucket de votre configuration. |
storage/cannot-slice-blob |
Cela se produit généralement lorsque le fichier local a été modifié (supprimé, enregistré à nouveau, etc.). Réessayez d'importer le fichier après avoir vérifié qu'il n'a pas été modifié. |
storage/server-file-wrong-size |
La taille du fichier sur le client ne correspond pas à celle du fichier reçu par le serveur. Réessayez d'importer la vidéo. |