टूल

JSON फ़ॉर्मेटर और सत्यापक

JSON

JSON को फ़ॉर्मेट, सत्यापित और संक्षिप्त करें। पंक्ति और स्तंभ के साथ सटीक त्रुटि स्थान, और सिंटैक्स हाइलाइटिंग।

100% क्लाइंट-साइड कोई बैकएंड नहीं

दूरस्थ URL लाए नहीं जाते; अपना JSON सीधे पेस्ट करें।

इनपुट
आउटपुट
बाईं ओर JSON पेस्ट करें ताकि वह यहाँ फ़ॉर्मेटेद दिखे।
इस पृष्ठ पर

JSON फ़ॉर्मेटर क्या है?#

एक JSON फ़ॉर्मेटर JSON के घने लेख-पिंड को — जैसा कोई सर्वर एक ही पंक्ति में लॉग करता है, या जैसा कोई बंडलर मिनिफ़ाइड रूप में निकालता है — लेकर उसे एकसमान इंडेंटेशन के साथ दोबारा लिखता है ताकि कोई इंसान उसे पढ़ सके। सुनने में यह मामूली लगता है, पर फ़ॉर्मेटर आमतौर पर वह पहला टूल होता है जिसकी ओर आप तब रुख करते हैं जब कोई अनुरोध विफल हो, किसी कॉन्फ़िग फ़ाइल में टाइपो हो, या दो पेलोड एक जैसे दिखें पर अलग व्यवहार करें।

यह पृष्ठ एक ही जगह तीन संबंधित काम करता है। यह pretty-print करता है (इंडेंटेशन और लाइन ब्रेक जोड़ता है), सत्यापित करता है (बताता है कि टेक्स्ट बिल्कुल मान्य JSON है या नहीं), और संक्षिप्त करता है (सबसे छोटे संभव पेलोड के लिए हर व्हाइटस्पेस बाइट हटा देता है)। जब सत्यापन विफल होता है, तो स्टेटस बार सिर्फ़ “त्रुटि” नहीं कहता — वह सटीक पंक्ति और स्तंभ बताता है, जो अक्सर पाँच-सेकंड के सुधार और बीस मिनट तक घूरने के बीच का फ़र्क होता है।

इसका उपयोग कैसे करें#

  1. अपना JSON बाईं ओर इनपुट पैन में पेस्ट करें। आप केवल व्यवहार देखना चाहते हैं तो नमूना पर क्लिक करके एक छोटा उदाहरण भी लोड कर सकते हैं।
  2. टूलबार पर कोई इंडेंट शैली चुनें: 2 रिक्त स्थान, 4 रिक्त स्थान, या टैब। दो रिक्त स्थान सबसे आम परिपाटी है; टैब तब सुविधाजनक होते हैं जब आप किसी ऐसे एडिटर में पेस्ट करने वाले हों जो पहले से उनका उपयोग करता है।
  3. चुनें कि और क्या करना है:
    • फ़ॉर्मेट — चुने गए इंडेंट के साथ pretty-print।
    • संक्षिप्त — एक ही पंक्ति में सिकोड़ें, कोई रिक्त स्थान नहीं। अनुरोध बॉडी में पेस्ट करने से पहले आदर्श।
    • सत्यापित — टेक्स्ट बदले बिना सिंटैक्स जाँचें; उपयोगी जब आपको केवल हाँ/नहीं जवाब चाहिए।
  4. कुंजी क्रमबद्ध करें को टिक करें यदि आप चाहते हैं कि ऑब्जेक्ट गुण वर्णमाला क्रम में सामने आएँ। यह तब आश्चर्यजनक रूप से उपयोगी है जब आप किसी API के दो अलग संस्करणों की प्रतिक्रियाओं की तुलना कर रहे हों: क्रमबद्ध कुंजियों के साथ, बचे अंतर केवल वही होते हैं जो वास्तव में मायने रखते हैं।
  5. एक आरामदायक, मानव-अनुकूल विकल्प के लिए अनुगामी कॉमा की अनुमति दें टिक करें (अंतिम आइटम के बाद एक कॉमा)। ध्यान दें कि सख़्त पार्सर इसे अस्वीकार करेंगे — इसे केवल स्थानीय पढ़ने के लिए चालू करें।
  6. परिणाम आउटपुट पैन में पढ़ें। नीचे का स्टेटस बार या तो Valid JSON या सटीक त्रुटि स्थान (row:col — message) बताता है। आउटपुट लेने के लिए कॉपी का उपयोग करें।

मुख्य विशेषियाँ#

  • सख़्त नेटिव पार्सर। ब्राउज़र के अपने JSON कार्यान्वयन पर बना है, इसलिए जो यहाँ पास होता है वही रनटाइम पर पास होता है। कोई कस्टम बोली नहीं, कोई आश्चर्य नहीं।
  • सटीक त्रुटि स्थान। एक अनुगामी कॉमा, एक बिना उद्धरण कुंजी, एक ग़ायब कोष्ठक — हर एक अपनी पंक्ति और स्तंभ के साथ बताया जाता है, सिर्फ़ एक सामान्य “पार्स त्रुटि” नहीं।
  • तीन इंडेंटेशन शैलियाँ। 2 रिक्त स्थान, 4 रिक्त स्थान, टैब।
  • वैकल्पिक कुंजी क्रमबद्ध करना और अनुगामी कॉमा। दोबारा पेस्ट किए बिना प्रति कार्य किसी भी को टॉगल करें।
  • 100% क्लाइंट-साइड। आप जो टेक्स्ट पेस्ट करते हैं वह आपके ब्राउज़र में इस पृष्ठ द्वारा संसाधित होता है। यह कभी अपलोड नहीं होता — अपलोड करने के लिए कोई बैकएंड है ही नहीं।
  • लाइव अक्षर गणना। दोनों पैन अपना आकार दिखाते हैं, जो तब मददगार है जब आप पेलोड से बाइट्स घटाने की कोशिश कर रहे हों।

कार्यरत उदाहरण#

कल्पना कीजिए कि एक कॉन्फ़िग एंडपॉइंट यह मिनिफ़ाइड ब्लॉब लौटाता है और आपको एक गलत नाम वाली कुंजी पहचाननी है:

इनपुट (मिनिफ़ाइड, एक पंक्ति):

{"server":"api.example.com","port":443,"retry":{"count":3,"backoffMs":[100,400,1600]},"tags":["prod","primary"]}

2 रिक्त स्थान इंडेंट और कुंजी क्रमबद्ध करें चालू के साथ फ़ॉर्मेट को क्लिक करें:

{
  "port": 443,
  "retry": {
    "backoffMs": [
      100,
      400,
      1600
    ],
    "count": 3
  },
  "server": "api.example.com",
  "tags": [
    "prod",
    "primary"
  ]
}

कुंजियाँ क्रमबद्ध होने के साथ, backoffMs अब count के ठीक बगल में है, और आप तुरंत वह घातीय रूप (100, 400, 1600) देख सकते हैं जो एकल-पंक्ति संस्करण पर अदृश्य था। ध्यान दें कि tags अब भी ["prod","primary"] ही है — कुंजी क्रमबद्ध करना केवल ऑब्जेक्ट गुणों को पुनर्व्यवस्थित करता है; यह कभी सरणी तत्वों को नहीं छूता, इसलिए जिस क्रम में आपने उन्हें रखा वही क्रम आपको वापस मिलता है।

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

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

नहीं। पार्सिंग इस पृष्ठ के भीतर ब्राउज़र के अंतर्निहित JSON API द्वारा की जाती है। न कोई सर्वर एंडपॉइंट है और न ही कोई नेटवर्क अनुरोध — आपका इनपुट आपके डिवाइस पर ही रहता है।

स्टेटस बार कहता है कि मेरा JSON अमान्य है पर वह ठीक दिखता है। अब क्या?#

बताई गई पंक्ति और स्तंभ की जाँच करें। चार सबसे आम कारण हैं: समाप्त होते } या ] से ठीक पहले एक अनुगामी कॉमा, स्ट्रिंग के चारों ओर एकल उद्धरण (JSON को दोहरे उद्धरण चाहिए), एक बिना उद्धरण ऑब्जेक्ट कुंजी, और किसी दूसरे एडिटर से पेस्ट किया गया एक शाब्दिक टैब या नियंत्रण वर्ण। स्तंभ संख्या सटीक गलती की ओर इशारा करती है।

“कुंजी क्रमबद्ध करें” वास्तव में क्या करता है?#

यह हर ऑब्जेक्ट के गुणों को वर्णमाला क्रम (ASCII क्रम, केस-संवेदी) में फिर से दर्शाता है। सरणियाँ अपने मूल क्रम में रहती हैं — कुंजी क्रमबद्ध करना कभी सरणी तत्वों को पुनर्व्यवस्थित नहीं करता, क्योंकि सरणी का क्रम सिमेंटिक रूप से सार्थक होता है।

क्या यह बहुत बड़ी फ़ाइलों को संभाल सकता है?#

हाँ, ब्राउज़र की मेमोरी सीमा तक। कुछ मेगाबाइट से बड़ी फ़ाइलों के लिए, फ़ॉर्मेटिंग में ध्यान देने योग्य क्षण लगने की उम्मीद करें; स्टेटस बार अक्षर संख्या दिखाता है ताकि आप आकार का अनुमान लगा सकें। यह पृष्ठ स्ट्रीम नहीं करता, इसलिए अत्यधिक बड़े इनपुट (सैकड़ों MB) टैब को थका देंगे।