कभी-कभी चीज़ें प्लान के मुताबिक नहीं होती हैं और गड़बड़ी हो जाती है.
अगर आपको कोई गड़बड़ी दिखती है, तो उसे देखें और जानें कि गड़बड़ी के मैसेज में क्या कहा गया है.
यहां दिया गया कोड, गड़बड़ी को मैनेज करने वाले कस्टम हैंडलर को लागू करने का तरीका दिखाता है. यह हैंडलर,
गड़बड़ी के कोड और गड़बड़ी के मैसेज की जांच करता है जो Cloud Storage से मिले हैं. गड़बड़ी को मैनेज करने वाले ऐसे हैंडलर को, Cloud Storage API में इस्तेमाल किए जाने वाले अलग-अलग ऑब्जेक्ट में जोड़ा जा सकता है. जैसे, UploadTask और FileDownloadTask).
Kotlin
internal inner class MyFailureListener : OnFailureListener { override fun onFailure(exception: Exception) { val errorCode = (exception as StorageException).errorCode val errorMessage = exception.message // test the errorCode and errorMessage, and handle accordingly } }
Java
class MyFailureListener implements OnFailureListener { @Override public void onFailure(@NonNull Exception exception) { int errorCode = ((StorageException) exception).getErrorCode(); String errorMessage = exception.getMessage(); // test the errorCode and errorMessage, and handle accordingly } }
अगर आपने गड़बड़ी का मैसेज देख लिया है और Cloud Storage Security Rules के मुताबिक, आपको वह कार्रवाई करने की अनुमति है, लेकिन फिर भी गड़बड़ी ठीक नहीं हो रही है, तो सहायता पाने के लिए हमारे सहायता पेज पर जाएं और हमें बताएं कि हम आपकी मदद कैसे कर सकते हैं.
गड़बड़ी के मैसेज मैनेज करना
गड़बड़ियां होने की कई वजहें हो सकती हैं. जैसे, फ़ाइल का मौजूद न होना, उपयोगकर्ता के पास चुनी गई फ़ाइल को ऐक्सेस करने की अनुमति न होना या उपयोगकर्ता का फ़ाइल अपलोड करने की कार्रवाई रद्द कर देना.
समस्या की सही जानकारी पाने और गड़बड़ी को मैनेज करने के लिए, यहां उन सभी गड़बड़ियों की पूरी सूची दी गई है जो हमारे क्लाइंट को दिख सकती हैं. साथ ही, यह भी बताया गया है कि ये गड़बड़ियां क्यों हो सकती हैं. इस टेबल में दिए गए गड़बड़ी के कोड, StorageException क्लास में इंटिजर कॉन्स्टैंट के तौर पर तय किए गए हैं.
| कोड | वजह |
|---|---|
ERROR_UNKNOWN |
ऐसी गड़बड़ी हुई जिसकी जानकारी नहीं है. |
ERROR_OBJECT_NOT_FOUND |
बताए गए रेफ़रंस पर कोई ऑब्जेक्ट मौजूद नहीं है. |
ERROR_BUCKET_NOT_FOUND |
Cloud Storage के लिए कोई बकेट कॉन्फ़िगर नहीं की गई है |
ERROR_PROJECT_NOT_FOUND |
Cloud Storage के लिए कोई प्रोजेक्ट कॉन्फ़िगर नहीं किया गया है |
ERROR_QUOTA_EXCEEDED |
आपकी बकेट का कोटा खत्म हो गया है. Cloud Storage for Firebase के लिए, पे-ऐज़-यू-गो ब्लेज़ प्लान ज़रूरी है. अगर आपको स्पार्क प्लान वाले प्रोजेक्ट में यह गड़बड़ी दिख रही है, तो आपको ऐक्सेस वापस पाने के लिए, ब्लेज़ प्लान पर अपग्रेड करना होगा. ज़्यादा जानकारी के लिए, हमारे अक्सर पूछे जाने वाले सवाल देखें. |
ERROR_NOT_AUTHENTICATED |
उपयोगकर्ता की पहचान की पुष्टि नहीं की गई है. कृपया पहचान की पुष्टि करें और फिर से कोशिश करें. |
ERROR_NOT_AUTHORIZED |
उपयोगकर्ता के पास अनुरोध की गई कार्रवाई करने की अनुमति नहीं है. यह पक्का करने के लिए कि आपके नियम सही हैं, उन्हें देखें. |
ERROR_RETRY_LIMIT_EXCEEDED |
किसी कार्रवाई (अपलोड, डाउनलोड, मिटाना वगैरह) के लिए तय की गई समयसीमा खत्म हो गई है. फिर से कोशिश करें. |
ERROR_INVALID_CHECKSUM |
क्लाइंट पर मौजूद फ़ाइल का चेकसम, सर्वर से मिली फ़ाइल के चेकसम से मेल नहीं खाता. फिर से अपलोड करें. |
ERROR_CANCELED |
उपयोगकर्ता ने कार्रवाई रद्द कर दी है. |
इसके अलावा, अमान्य यूआरएल के साथ getReferenceFromUrl() को कॉल करने की कोशिश करने पर, IllegalArgumentException दिखेगा. ऊपर दिए गए तरीके के लिए, आर्ग्युमेंट gs://bucket/object या https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> फ़ॉर्मैट में होना चाहिए