"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > गोलांग में JSON मार्शलिंग के दौरान आप त्रुटियों से कैसे निपटते हैं?

गोलांग में JSON मार्शलिंग के दौरान आप त्रुटियों से कैसे निपटते हैं?

2024-11-12 को प्रकाशित
ब्राउज़ करें:386

How do you Handle Errors During JSON Marshalling in Golang?

गोलांग JSON मार्शलिंग में त्रुटि प्रबंधन

JSON डेटा संरचनाएं चक्रीय संदर्भों का प्रतिनिधित्व नहीं कर सकती हैं, और Go का json.Marshal फ़ंक्शन उन्हें संभाल नहीं सकता है। परिणामस्वरूप, मार्शल को चक्रीय संरचनाओं को पारित करने से अनंत पुनरावृत्ति और रनटाइम घबराहट होती है।

चक्रीय संरचनाओं से परे, json.Marshal उन स्थितियों में गैर-शून्य त्रुटियां भी लौटा सकता है जहां यह असमर्थित प्रकारों या अमान्य मानों का सामना करता है।

असमर्थित प्रकार

मार्शल एक लौटाता है असमर्थित डेटा प्रकार को मार्शल करने का प्रयास करते समय UnsupportedTypeError। उदाहरण के लिए:

import "encoding/json"

func main() {
    ch := make(chan int)
    _, err := json.Marshal(ch)
    if _, ok := err.(*json.UnsupportedTypeError); ok {
        // Error: Unmarshal: unsupported type: chan int
    }
}

असमर्थित मान

अमान्य मान को मार्शल करने का प्रयास करते समय मार्शल एक UnsupportedValueError भी लौटा सकता है। उदाहरण के लिए:

import (
    "encoding/json"
    "math"
)

func main() {
    positiveInfinity := math.Inf(1)
    _, err := json.Marshal(positiveInfinity)
    if _, ok := err.(*json.UnsupportedValueError); ok {
        // Error: json: unsupported value:  Inf
    }
}

इन शर्तों को समझकर, डेवलपर्स त्रुटियों को शालीनता से संभाल सकते हैं और यह सुनिश्चित कर सकते हैं कि json.Marshal अपेक्षित परिणाम देता है या उचित त्रुटियों को संभालता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3