कभी-कभी ऐसा होता है कि चीज़ें प्लान के मुताबिक नहीं होतीं और कोई गड़बड़ी हो जाती है.
अगर आपको कोई संदेह है, तो गड़बड़ी की जानकारी देखें और देखें कि गड़बड़ी का मैसेज क्या कहता है.
नीचे दिया गया कोड, गड़बड़ी को मैनेज करने वाले कस्टम हैंडलर को लागू करने का तरीका दिखाता है. यह Cloud Storage से मिले गड़बड़ी कोड और गड़बड़ी के मैसेज की जांच करता है. गड़बड़ी को मैनेज करने वाले ऐसे फ़ंक्शन, Cloud Storage एपीआई में इस्तेमाल किए जाने वाले अलग-अलग ऑब्जेक्ट में जोड़े जा सकते हैं. उदाहरण के लिए, UploadTask
और FileDownloadTask
.
Kotlin+KTX
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 बकेट का कोटा पार हो गया है. अगर आपने Spark की कीमत का प्लान लिया है, तो इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर अपग्रेड करें. अगर आपने पहले से ही Blaze प्राइसिंग प्लान का इस्तेमाल किया है, तो 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>
फ़ॉर्मैट में होना चाहिए