JSON फ़ॉर्मैटर

JSON को तुरंत फ़ॉर्मैट, सत्यापित और मिनिफ़ाई करें।

अपना JSON पेस्ट करें

data.json
तैयार। JSON चिपकाएँ और क्रिया चुनें।

आपका JSON आपके ब्राउज़र में प्रोसेस होता है। BroBroGo पर कुछ भी अपलोड नहीं होता।

अक्सर पूछे जाने वाले सवाल

क्या मेरा JSON अपलोड होता है?

नहीं। फ़ॉर्मैटर आपके ब्राउज़र में चलता है और आपका JSON अपलोड नहीं करता।

मिनिफ़ाई क्या करता है?

मिनिफ़ाई अतिरिक्त स्पेस और लाइन ब्रेक हटाता है, लेकिन JSON डेटा वही रहता है।

JSON संरचना और सिंटैक्स सत्यापन का महत्व

JSON (JavaScript Object Notation) आधुनिक डेटा विनिमय और API संचार का एक मानक आधार है। इसका उपयोग कॉन्फ़िगरेशन फ़ाइलों को सहेजने, सर्वर और क्लाइंट के बीच डेटा स्थानांतरित करने और विभिन्न सेवाओं के बीच तालमेल बिठाने के लिए किया जाता है। चूँकि मशीनें सख्त सिंटैक्स नियमों के आधार पर JSON को पढ़ती हैं, इसलिए डेटा में एक छोटा सा विचलन भी पूरे सिस्टम को बाधित कर सकता है।

JSON सिंटैक्स के अंतर्गत डेटा को ऑब्जेक्ट (कुंजी-मान जोड़े) और ऐरे (मानों की क्रमबद्ध सूची) के रूप में व्यवस्थित किया जाता है। इस संरचना को मान्य रखना आवश्यक है ताकि पार्सिंग के दौरान कोई त्रुटि न आए। "JSON फ़ॉर्मैटर" टूल आपके ब्राउज़र में स्थानीय रूप से डेटा का विश्लेषण करता है और यह सुनिश्चित करता है कि आपका डेटा पूरी तरह से मानक के अनुरूप है।

JSON को फ़ॉर्मैट और मिनिफ़ाई करने की तकनीक

पठनीयता और डेटा ट्रांसमिशन दक्षता के बीच संतुलन बनाना विकास प्रक्रिया का एक महत्वपूर्ण हिस्सा है। जब API से प्राप्त डेटा एक ही पंक्ति में संकुचित होता है, तो उसे पढ़ना कठिन होता है।

  • फ़ॉर्मैटिंग: यह प्रक्रिया डेटा में उचित इंडेंटेशन और लाइन ब्रेक जोड़ती है। उपयोगकर्ता अपनी आवश्यकतानुसार इंडेंटेशन स्तर चुन सकते हैं, जिससे जटिल नेस्टेड संरचनाओं को समझना आसान हो जाता है। फ़ॉर्मैटिंग पूरी होने पर टूल "JSON फ़ॉर्मैट हो गया।" संदेश प्रदर्शित करता है।
  • मिनिफ़िकेशन: इसके विपरीत, जब डेटा को सहेजने या नेटवर्क पर भेजने की बात आती है, तो फ़ाइल का आकार कम करना प्राथमिकता होती है। मिनिफ़िकेशन प्रक्रिया सभी अनावश्यक स्पेस और लाइन ब्रेक को हटा देती है। इससे डेटा का आकार घट जाता है लेकिन उसकी मूल संरचना और मान सुरक्षित रहते हैं। मिनिफ़िकेशन के बाद टूल "JSON मिनिफ़ाई हो गया।" संदेश दिखाता है।

ट्री व्यू के माध्यम से जटिल डेटा को नेविगेट करना

बड़े और जटिल JSON दस्तावेज़ों को केवल टेक्स्ट के रूप में पढ़ना कठिन हो सकता है। इसके लिए टूल में "ट्री" दृश्य की सुविधा दी गई है, जो डेटा को एक इंटरैक्टिव पदानुक्रमित संरचना में बदल देता है।

ट्री व्यू का उपयोग करते समय निम्नलिखित नियमों और सीमाओं का ध्यान रखना आवश्यक है:

  • यदि इनपुट किया गया JSON अमान्य है, तो ट्री व्यू सक्रिय नहीं होगा और "ट्री व्यू देखने के लिए पहले JSON को सही करें।" संदेश दिखाई देगा।
  • अत्यधिक बड़े दस्तावेज़ों के लिए, टूल "यह JSON ट्री व्यू के लिए बहुत बड़ा है।" या "इस JSON में ट्री के रूप में दिखाने के लिए बहुत अधिक मान हैं।" प्रदर्शित करता है।
  • जब आप किसी बड़े JSON ट्री को पूरी तरह से खोलते हैं, तो रेंडरिंग को सीमित करने के लिए "यह JSON पूरी तरह खोलने के लिए बहुत बड़ा है — पहली ‹count› पंक्तियाँ दिखाई जा रही हैं।" संदेश दिखाई देता है, जिसके बाद उपयोगकर्ता "‹count› और दिखाएँ…" बटन का उपयोग कर सकते हैं।
  • उपयोगकर्ता विशिष्ट नोड्स को प्रबंधित करने के लिए "‹key› खोलें" और "‹key› समेटें" का उपयोग कर सकते हैं।

ट्री व्यू के भीतर "कुंजियाँ और मान खोजें" लेबल वाले खोज बॉक्स के माध्यम से विशिष्ट डेटा को ढूँढा जा सकता है। खोज के परिणाम "‹total› में से ‹current›" या कैप की गई स्थिति में "‹total›+ में से ‹current›" के रूप में दिखाई देते हैं। यदि कोई परिणाम नहीं मिलता, तो "कोई मिलान नहीं" प्रदर्शित होता है। उपयोगकर्ता "पिछला मिलान" और "अगला मिलान" बटनों की सहायता से परिणामों के बीच नेविगेट कर सकते हैं।

JSON Pointer और JSONPath का उपयोग करके डेटा निकालना

जटिल JSON संरचनाओं से विशिष्ट मानों को निकालने के लिए टूल "रूट" नोड से शुरू होने वाले पथ प्रदान करता है। उपयोगकर्ता किसी भी कुंजी के लिए उपलब्ध "‹key› के लिए कॉपी विकल्प" मेनू खोल सकते हैं। इस मेनू के अंतर्गत निम्नलिखित विकल्प मिलते हैं:

  1. मान कॉपी करें: यह सीधे उस कुंजी के मान को कॉपी करता है।
  2. JSON Pointer कॉपी करें: यह पथ को कॉपी करता है।
  3. JSONPath कॉपी करें: यह पथ को कॉपी करता है।

ये विकल्प डेवलपर्स को बड़े डेटा सेट से सटीक पथ खोजने और उन्हें अपने कोड में उपयोग करने की सुविधा देते हैं।

सामान्य JSON त्रुटियों की पहचान और सुधार

यह टूल केवल त्रुटियों की पहचान ही नहीं करता, बल्कि उन्हें ठीक करने के लिए "सुधार का पूर्वावलोकन" भी प्रदान करता है। यदि JSON अमान्य है, तो टूल विशिष्ट त्रुटि संदेश और उसका स्थान "पंक्ति ‹line›, कॉलम ‹col›" के रूप में दिखाता है। उपयोगकर्ता "त्रुटि पर जाएँ" बटन पर क्लिक करके सीधे उस स्थान पर पहुँच सकते हैं।

टूल द्वारा पहचानी जाने वाली कुछ सामान्य सिंटैक्स त्रुटियाँ और उनके कारण इस प्रकार हैं:

त्रुटि संदेश विवरण
"आइटमों के बीच कॉमा गायब है" ऑब्जेक्ट या ऐरे के तत्वों के बीच आवश्यक अल्पविराम (,) न होना।
"बंद करने वाले ब्रैकेट से पहले अतिरिक्त कॉमा है" अंतिम तत्व के बाद अनावश्यक ट्रेलिंग कॉमा का होना।
"ऑब्जेक्ट कुंजियाँ डबल कोट्स में होनी चाहिए" कुंजियों के लिए सिंगल कोट्स का उपयोग या बिना कोट्स के लिखना।
"प्रॉपर्टी नाम के बाद कोलन गायब है" कुंजी और मान के बीच कोलन (:) का न होना।
"किसी स्ट्रिंग का समापन कोट गायब है" स्ट्रिंग के अंत में डबल कोट बंद न होना।
"JSON बहुत जल्दी खत्म हो जाता है — यह अधूरा लगता है" अधूरा या कटा हुआ डेटा।
"जहाँ मान होना चाहिए वहाँ अनपेक्षित वर्ण है" अमान्य टोकन या गलत सिंटैक्स।
"यह JSON प्रोसेस करने के लिए बहुत गहराई तक नेस्टेड है" अत्यधिक गहराई वाली संरचना जो सीमा से बाहर है।
"डुप्लिकेट कुंजी ‹key› — फ़ॉर्मैट करने से पहले एक हटाएँ" एक ही ऑब्जेक्ट में एक ही नाम की दो कुंजियों का होना।

यदि इनपुट में कोई गैर-मानक प्रारूप मिलता है, तो टूल उसकी पहचान करता है और सुधार के विकल्प देता है:

  • Markdown कोड फ़ेंस: टूल "यह Markdown कोड फ़ेंस के अंदर रखा JSON लगता है।" दिखाता है। "लागू करने पर केवल फ़ेंस के अंदर का JSON रखा जाएगा।"
  • एस्केप की गई स्ट्रिंग: टूल "यह किसी स्ट्रिंग के अंदर एस्केप किया गया JSON लगता है।" दिखाता है। "लागू करने पर स्ट्रिंग अनएस्केप होकर सादा JSON बन जाएगी।"
  • Python डिक्शनरी: टूल "यह JSON नहीं, बल्कि Python-शैली की डिक्शनरी लगती है।" दिखाता है। "लागू करने पर उद्धरण चिह्न और True/False/None JSON के रूप में फिर लिखे जाएँगे।"
  • JSON Lines: टूल "यह JSON Lines लगता है — हर पंक्ति में एक मान।" दिखाता है। "लागू करने पर पंक्तियाँ एक JSON ऐरे में समेट दी जाएँगी।"
  • JSONP कॉलबैक: टूल "यह JSONP कॉलबैक में लिपटा JSON लगता है।" दिखाता है। "लागू करने पर कॉलबैक रैपर हटा दिया जाएगा।"
  • JSONC (टिप्पणियों के साथ): टूल "यह JSONC लगता है — टिप्पणियाँ या अंत के कॉमा। सिंटैक्स को JSONC पर बदलें या सुधार लागू करें।" दिखाता है। "लागू करने पर टिप्पणियाँ और अंत के कॉमा हटा दिए जाएँगे।"

सुधार प्रक्रिया के दौरान "सुधार पूर्वावलोकन" विंडो खुलती है जिसमें "मूल" और "सुधार के बाद" का तुलनात्मक दृश्य दिखाई देता है। यदि सुधार बड़ा है, तो "पूर्वावलोकन छोटा किया गया है — सुधार पूरे दस्तावेज़ पर लागू होता है।" संदेश दिखाई देता है। उपयोगकर्ता "सुधार लागू करें" या "रद्द करें" चुन सकते हैं। सुधार लागू होने पर "सुधार लागू हो गया। पूर्ववत करने के लिए Ctrl/Cmd+Z दबाएँ।" प्रदर्शित होता है। यदि स्वचालित सुधार संभव न हो, तो "यह इनपुट अपने आप ठीक नहीं किया जा सका।" दिखाई देता है।

कुंजियों को क्रमबद्ध करना

टूल में ऑब्जेक्ट की कुंजियों को व्यवस्थित करने के लिए "कुंजियाँ क्रमबद्ध करें" बटन दिया गया है। इसका टूलटिप "ऑब्जेक्ट की कुंजियों को कोड-पॉइंट क्रम में रिकर्सिव रूप से क्रमबद्ध करता है। ऐरे का क्रम कभी नहीं बदलता।" इसके कार्य को स्पष्ट करता है। कुंजियों को क्रमबद्ध करने के बाद टूल "कुंजियाँ क्रमबद्ध हो गईं — ऐरे का क्रम अपरिवर्तित है। पूर्ववत करने के लिए Ctrl/Cmd+Z दबाएँ।" संदेश प्रदर्शित करता है।

बड़ी फ़ाइलों को संभालने के नियम और सीमाएँ

यह टूल बड़ी फ़ाइलों को कुशलतापूर्वक संसाधित करने के लिए कुछ कड़े नियमों और सीमाओं के अंतर्गत काम करता है:

  • अधिकतम इनपुट सीमा: टूल अधिकतम 10 MiB तक के इनपुट का समर्थन करता है। यदि इनपुट इस सीमा को पार करता है, तो "इनपुट ‹limit› से बड़ा है, जो इस टूल की क्षमता से अधिक है।" प्रदर्शित होता है।
  • फ़ाइल अपलोड सीमा: उपयोगकर्ता "फ़ाइल खोलें" बटन या ड्रैग-एंड-ड्रॉप ("यहाँ.json या.txt फ़ाइल छोड़ें") के माध्यम से केवल .json या .txt फ़ाइलें लोड कर सकते हैं। यदि फ़ाइल बहुत बड़ी है, तो "फ़ाइल बहुत बड़ी है — सीमा ‹limit› है।" दिखाई देता है।
  • असमर्थित प्रारूप: गलत फ़ाइल प्रकार चुनने पर "असमर्थित फ़ाइल प्रकार —.json या.txt फ़ाइल चुनें।" दिखाई देता है।
  • एन्कोडिंग: फ़ाइलें अनिवार्य रूप से UTF-8 एन्कोडेड होनी चाहिए। अन्यथा, "यह फ़ाइल UTF-8 टेक्स्ट नहीं है, इसलिए इसे यहाँ नहीं खोला जा सकता।" त्रुटि दिखाई देगी।
  • रीड विफलता: यदि फ़ाइल पढ़ने में कोई अन्य समस्या आती है, तो "यह फ़ाइल पढ़ी नहीं जा सकी। इसे फिर से चुनकर देखें।" प्रदर्शित होता है।
  • सिंक्रोनस प्रोसेसिंग थ्रेशोल्ड: 250,000 वर्णों से अधिक के इनपुट के लिए प्रसंस्करण के नियम बदल जाते हैं। यदि सत्यापन या पार्सिंग में बहुत अधिक समय लगता है, तो सुरक्षा के लिए प्रक्रिया को रोक दिया जाता है और "इस JSON की जाँच में बहुत समय लगा, इसलिए इसे रोक दिया गया। छोटा दस्तावेज़ आज़माएँ।" संदेश दिखाई देता है।

गोपनीयता और स्थानीय प्रसंस्करण

इस टूल का उपयोग करते समय आपकी डेटा गोपनीयता पूरी तरह सुरक्षित रहती है। आपका JSON आपके ब्राउज़र में प्रोसेस होता है। BroBroGo पर कुछ भी अपलोड नहीं होता। संपूर्ण प्रसंस्करण स्थानीय स्तर पर क्लाइंट-साइड पर ही निष्पादित होता है।


अक्सर पूछे जाने वाले प्रश्न (FAQ)

क्या मेरा JSON अपलोड होता है?

नहीं। फ़ॉर्मैटर आपके ब्राउज़र में चलता है और आपका JSON अपलोड नहीं करता।

मिनिफ़ाई क्या करता है?

मिनिफ़ाई अतिरिक्त स्पेस और लाइन ब्रेक हटाता है, लेकिन JSON डेटा वही रहता है।

क्या मैं इस टूल में टिप्पणियों वाले JSON (JSONC) को प्रोसेस कर सकता हूँ?

हाँ, आप "सिंटैक्स" लेबल के अंतर्गत "JSONC" सिंटैक्स चुन सकते हैं या टिप्पणियों और अंत के कॉमा को हटाने के लिए सुधार लागू कर सकते हैं।

डुप्लिकेट कुंजियों के मामले में यह टूल क्या करता है?

यह टूल डुप्लिकेट कुंजियों को चुपचाप मर्ज या अनदेखा करने के बजाय "डुप्लिकेट कुंजी ‹key› — फ़ॉर्मैट करने से पहले एक हटाएँ" त्रुटि प्रदर्शित करता है।

क्या कुंजियों को क्रमबद्ध करने से मेरे ऐरे का क्रम बदल जाएगा?

नहीं, कुंजियों को क्रमबद्ध करने पर केवल ऑब्जेक्ट की कुंजियाँ कोड-पॉइंट क्रम में रिकर्सिव रूप से व्यवस्थित होती हैं, ऐरे का क्रम हमेशा अपरिवर्तित रहता है।