JSON वेलिडेटर
जांचें कि आपका JSON RFC 8259 के खिलाफ सिंटैक्स रूप से मान्य है या नहीं। समस्याओं को जल्दी ठीक करने के लिए लाइन और कॉलम नंबर के साथ सटीक त्रुटि संदेश प्राप्त करें।
एक एरे में अंतिम तत्व के बाद ट्रेलिंग कॉमा सबसे सामान्य JSON त्रुटि है - और यह मिनिफाइड आउटपुट में आंखों के लिए अदृश्य है। JSON पार्सिंग त्रुटियाँ API डिबगिंग समय का लगभग 15% बनाती हैं, StackOverflow के 2023 डेवलपर सर्वेक्षण विश्लेषण के अनुसार। यह वेलिडेटर आपके ब्राउज़र में सीधे उस और RFC 8259 के हर अन्य उल्लंघन को पकड़ता है। अपने JSON को पेस्ट करें ताकि आपको तुरंत निर्णय मिल सके: मान्य या अमान्य, किसी भी समस्या की सटीक लाइन और कॉलम के साथ। कुछ भी अपलोड नहीं किया गया। कोई खाता आवश्यक नहीं।
JSON को मान्य कैसे करें
- अपने JSON को इनपुट बॉक्स में पेस्ट या टाइप करें।
- वेलिडेटर वास्तविक समय में सिंटैक्स की जांच करता है, या पूर्ण रिपोर्ट के लिए Validate पर क्लिक करें।
- यदि मान्य है, तो एक हरा संकेतक संरचना की पुष्टि करता है और शीर्ष-स्तरीय प्रकार का सारांश प्रदान करता है।
- यदि अमान्य है, तो त्रुटि पैनल सटीक लाइन, कॉलम और समस्या का स्पष्ट विवरण दिखाता है।
- संकेतित समस्या को ठीक करें और तब तक फिर से मान्य करें जब तक आपको एक साफ परिणाम नहीं मिलता।
क्या जांचा जाता है
संरचनात्मक नियम
JSON को शीर्ष स्तर पर या तो एक ऑब्जेक्ट ({}) या एक एरे ([]) से शुरू होना चाहिए, हालांकि RFC 8259 प्राइमिटिव्स (स्ट्रिंग्स, नंबर, बूलियन, नल) को शीर्ष-स्तरीय मान के रूप में भी अनुमति देता है। ब्रेसेस और ब्रैकेट्स को संतुलित और सही तरीके से नेस्ट किया जाना चाहिए। कॉमा को तत्वों को अलग करना चाहिए लेकिन अंतिम तत्व के बाद नहीं आना चाहिए - ट्रेलिंग कॉमा सबसे सामान्य JSON त्रुटि है। प्रत्येक ऑब्जेक्ट कुंजी एक डबल-कोटेड स्ट्रिंग होनी चाहिए।
मान प्रकार
JSON छह मान प्रकारों को परिभाषित करता है: स्ट्रिंग्स (डबल-कोटेड, विशेष एस्केप अनुक्रमों के साथ), नंबर (पूर्णांक और दशमलव, कोई अग्रणी शून्य नहीं), बूलियन (true और false, केवल छोटे अक्षरों में), null (छोटे अक्षरों में), ऑब्जेक्ट्स, और एरे। JavaScript-विशिष्ट मान जैसे undefined, NaN, Infinity, और फ़ंक्शन एक्सप्रेशंस मान्य JSON नहीं हैं और मान्यता में विफल होंगे।
RFC 8259 अनुपालन
RFC 8259 (दिसंबर 2017 में प्रकाशित, RFC 4627 और RFC 7159 को प्रतिस्थापित करते हुए) JSON के लिए वर्तमान IETF मानक है। यह UTF-8 एन्कोडिंग को निर्दिष्ट करता है, डुप्लिकेट ऑब्जेक्ट कुंजियों को प्रतिबंधित करता है, और स्ट्रिंग मानों के लिए सटीक एस्केप अनुक्रमों को परिभाषित करता है। यह वेलिडेटर सभी पार्सर्स और भाषाओं के बीच अधिकतम संगतता के लिए सख्त RFC 8259 नियमों को लागू करता है।
उदाहरण
अमान्य इनपुट (ट्रेलिंग कॉमा)
{
"name": "Alice",
"roles": ["admin", "editor",]
}
वेलिडेटर त्रुटि
Error at line 3, column 33: Unexpected token ']'
Trailing commas are not permitted in JSON arrays (RFC 8259 §5).
सामान्य सिंटैक्स त्रुटियाँ
- ट्रेलिंग कॉमा -
{"a": 1,}- बंद ब्रेकेट या ब्रेसेस से पहले अंतिम कॉमा हटा दें - सिंगल-कोटेड स्ट्रिंग्स -
{'key': 'value'}- डबल कोट में बदलें - अनक्वोटेड कुंजी -
{key: "value"}- कुंजी को डबल कोट में लपेटें - JavaScript टिप्पणियाँ -
// commentया/* comment */- JSON में कोई टिप्पणी सिंटैक्स नहीं है; उन्हें हटा दें - गलत बूलियन/नल केसिंग -
True,False,NULLअमान्य हैं;true,false,nullका उपयोग करें
मान्यता और फॉर्मेटिंग के बीच का अंतर
मान्यता जांचती है कि JSON सिंटैक्स रूप से सही है या नहीं - यह विशिष्ट त्रुटि विवरण के साथ पास या फेल होती है। फॉर्मेटिंग केवल पठनीयता के लिए व्हाइटस्पेस जोड़ती है और सही होने की पुष्टि नहीं करती। अमान्य JSON को फॉर्मेट करने का प्रयास भी विफल होता है, क्योंकि फॉर्मेटर को पहले JSON को पार्स करना होता है। पहले मान्य करें, फिर फॉर्मेट करें।
एक बार JSON मान्यता पास करने के बाद, JSON Formatter इसे पठनीयता के लिए इंडेंट करता है, और JSON Minifier इसे उत्पादन उपयोग के लिए संकुचित करता है। URL-एंबेडेड JSON के लिए, मान्य करने से पहले URL Decoder के साथ डिकोड करें।
अक्सर पूछे जाने वाले सवाल
JSON मान्यता और फॉर्मेटिंग में क्या अंतर है?
मान्यता जांचती है कि आपका JSON RFC 8259 के अनुसार सिंटैक्स रूप से सही है या नहीं। फॉर्मेटिंग केवल पठनीयता के लिए व्हाइटस्पेस जोड़ती है और सही होने की पुष्टि नहीं करती। आप अमान्य JSON को फॉर्मेट करने का प्रयास कर सकते हैं, लेकिन फॉर्मेटर भी विफल होगा क्योंकि इसे पहले JSON को पार्स करना होगा। फॉर्मेटिंग से पहले मान्य करें।
JavaScript मेरा JSON स्वीकार करता है लेकिन वेलिडेटर इसे अस्वीकृत करता है, ऐसा क्यों?
कुछ JavaScript वातावरण ढीले JSON सुपरसेट जैसे JSON5 या HJSON को स्वीकार करते हैं, जो टिप्पणियों, सिंगल-कोटेड स्ट्रिंग्स और ट्रेलिंग कॉमा की अनुमति देते हैं। यह वेलिडेटर सख्त RFC 8259 के खिलाफ परीक्षण करता है ताकि यह सुनिश्चित हो सके कि JSON सभी भाषाओं और रनटाइम में काम करता है। यदि आपका उपयोग मामला केवल JavaScript है, तो JSON5.parse() का उपयोग json5 लाइब्रेरी के साथ करें।
क्या मैं इस उपकरण से JSON स्कीमा दस्तावेजों को मान्य कर सकता हूँ?
यह उपकरण केवल JSON सिंटैक्स को मान्य करता है, JSON स्कीमा अर्थशास्त्र को नहीं। एक JSON स्कीमा दस्तावेज स्वयं मान्य JSON है, इसलिए सिंटैक्स मान्यता काम करती है। यह जांचने के लिए कि क्या एक डेटा ऑब्जेक्ट JSON स्कीमा परिभाषा के अनुरूप है, आपको एक समर्पित JSON स्कीमा वेलिडेटर की आवश्यकता है जैसे ajv।
क्या जब मैं यहाँ मान्य करता हूँ तो मेरा डेटा निजी है?
पूर्ण रूप से। मान्यता आपके ब्राउज़र में क्लाइंट-साइड चलती है, जो मूल JSON.parse फ़ंक्शन का उपयोग करती है। कोई डेटा किसी सर्वर को नहीं भेजा जाता, लॉग नहीं किया जाता, या संग्रहीत नहीं किया जाता। आप API क्रेडेंशियल्स, व्यक्तिगत जानकारी, या आंतरिक व्यावसायिक डेटा वाले पेलोड्स को सुरक्षित रूप से मान्य कर सकते हैं।
सबसे सामान्य JSON मान्यता त्रुटियाँ क्या हैं?
आवृत्ति के क्रम में: (1) अंतिम तत्व के बाद ट्रेलिंग कॉमा - [1, 2, 3,]; (2) डबल-कोटेड के बजाय सिंगल-कोटेड स्ट्रिंग्स; (3) स्ट्रिंग्स के अंदर अनएस्केप्ड बैकस्लैश या कंट्रोल कैरेक्टर्स; (4) JavaScript टिप्पणियाँ; (5) True/False/Null के बजाय बड़े अक्षर में true/false/null।