Flutter पर Cloud Storage के लिए गड़बड़ियां मैनेज करना

कभी-कभी जब आप एक ऐप्लिकेशन बना रहे होते हैं, तब चीज़ें योजना के अनुसार नहीं होती हैं और गड़बड़ी होती है!

संदेह होने पर, फ़ंक्शन में दिए गए अपवाद को पकड़ें और देखें कि गड़बड़ी के मैसेज में क्या लिखा है.

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 Cloud Storage के लिए कोई बकेट कॉन्फ़िगर नहीं की गई है
storage/project-not-found Cloud Storage के लिए कोई प्रोजेक्ट कॉन्फ़िगर नहीं किया गया है
storage/quota-exceeded आपके Cloud Storage बकेट का कोटा पूरा हो गया है. अगर बिना शुल्क वाले प्लान का इस्तेमाल किया जा रहा है, तो पैसे चुकाकर लिए जाने वाले प्लान पर अपग्रेड करें. अगर पैसे चुकाकर लिए गए किसी प्लान का इस्तेमाल किया जा रहा है, तो Firebase की सहायता टीम से संपर्क करें.
storage/unauthenticated उपयोगकर्ता की पुष्टि नहीं हुई है. कृपया पुष्टि करें और फिर से कोशिश करें.
storage/unauthorized उपयोगकर्ता मनचाही कार्रवाई करने के लिए अधिकृत नहीं है. अपने सुरक्षा नियमों की जांच करके पक्का करें कि वे सही हैं.
storage/retry-limit-exceeded किसी कार्रवाई (अपलोड, डाउनलोड, मिटाना वगैरह) की तय समयसीमा खत्म हो गई है. फिर से अपलोड करें.
storage/invalid-checksum क्लाइंट पर मौजूद फ़ाइल, सर्वर को मिली फ़ाइल के चेकसम से मेल नहीं खाती है. फिर से अपलोड करें.
storage/canceled उपयोगकर्ता ने कार्रवाई रद्द कर दी है.
storage/invalid-event-name इवेंट का नाम अमान्य है. [running, progress, pause] में से एक होना चाहिए
storage/invalid-url refFromURL() को दिया गया यूआरएल गलत है. इसका फ़ॉर्मैट ऐसा होना चाहिए: gs://bucket/object या https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
storage/invalid-argument put() को पास किया गया तर्क File, Blob या UInt8 सरणी होना चाहिए. putString() को दिया गया तर्क, रॉ, Base64 या Base64URL स्ट्रिंग होनी चाहिए.
storage/no-default-bucket आपके कॉन्फ़िगरेशन की storageBucket प्रॉपर्टी में कोई बकेट सेट नहीं की गई है.
storage/cannot-slice-blob आम तौर पर, ऐसा तब होता है, जब लोकल फ़ाइल बदल जाती है (मिटाई गई, फिर से सेव की गई वगैरह). फ़ाइल में कोई बदलाव नहीं हुआ है, इसकी पुष्टि करने के बाद फिर से अपलोड करें.
storage/server-file-wrong-size क्लाइंट पर मौजूद फ़ाइल, सर्वर को मिली फ़ाइल के आकार से मेल नहीं खाती. फिर से अपलोड करें.