UltKit
इमेज11
PDF13
डॉक्यूमेंट और डेटा7
वीडियो6
ऑडियो4
और टूल्स22

YAML से JSON कन्वर्टर

YAML कॉन्फ़िगरेशन, OpenAPI स्पेक और CI फ़ाइलों को ऐसे JSON में बदलें जिसे कोई भी पार्सर, API या स्कीमा वैलिडेटर पढ़ सके। .yaml या .yml फ़ाइलें अपलोड करें और इंडेंटेड JSON डाउनलोड करें।

डेटा कन्वर्टर

या CSV, TSV, TXT … फ़ाइलें यहाँ ड्रop करें ·

प्रति फ़ाइल अधिकतम 95 MB· अधिकतम 20 फ़ाइलें· 30 मिनट बाद हटा दी जाती हैं

आउटपुट

फ़ाइलें हमारे सर्वर पर प्रोसेस होती हैं और 30 मिनट बाद हटा दी जाती हैं।

इस टूल का उपयोग कैसे करें

  1. 1

    YAML फ़ाइलें अपलोड करें

    एक बार में 20 तक .yaml या .yml फ़ाइलें जोड़ें, हर फ़ाइल 95 MB तक। मूल नाम वैसे ही रखें; JSON फ़ाइलों के नाम वही रहेंगे, बस एक्सटेंशन नया होगा।

  2. 2

    इंडेंटेड या कॉम्पैक्ट चुनें

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

  3. 3

    कन्वर्ट करें और इस्तेमाल करें

    JSON में बदलें दबाएँ, डाउनलोड करें और फ़ाइल को उस API, वैलिडेटर या स्क्रिप्ट को दें जिसके लिए यह चाहिए थी।

डेवलपर YAML को JSON में क्यों बदलते हैं

YAML इंसानों के लिए लिखी जाती है: ब्रेसेस की जगह इंडेंटेशन, कमेंट, और ज़्यादातर स्ट्रिंग के आसपास कोट्स नहीं। इसीलिए Kubernetes मैनिफ़ेस्ट, GitHub Actions वर्कफ़्लो, Docker Compose फ़ाइलें और OpenAPI स्पेक, जिन्हें टीमें हाथ से एडिट करती हैं, YAML में होते हैं। JSON प्रोग्राम के लिए लिखा जाता है। हर भाषा की स्टैंडर्ड लाइब्रेरी में JSON पार्सर होता है, ब्राउज़र इसे सीधे पार्स करते हैं, और ज़्यादातर HTTP API कुछ और लेते ही नहीं।

इसलिए कन्वर्जन सीमा पर होता है। प्लेटफ़ॉर्म इंजीनियर मैनिफ़ेस्ट को jq में भेजता है, जो सिर्फ़ JSON पढ़ता है। बैकएंड डेवलपर OpenAPI स्पेक को ऐसे कोड जनरेटर को देता है जिसे JSON चाहिए। टेस्टर YAML में लिखा फ़िक्स्चर डेटा JavaScript टेस्ट सूट में लोड करता है। हर मामले में YAML ही मूल स्रोत रहती है और JSON बिल्ड आर्टिफ़ैक्ट होता है। कॉन्फ़िग की जगह फ़ीड या एक्सपोर्ट की पूरी डायरेक्टरी हो, तो XML से JSON पुराने मार्कअप फ़ॉर्मेट को इसी तरह संभालता है।

YAML और JSON साथ-साथ कैसे विकसित हुए

Clark Evans ने YAML का पहला प्रस्ताव रखा
2001
YAML 1.2 में JSON, YAML का सबसेट बना
2009
RFC 8259, मौजूदा JSON स्टैंडर्ड
2017
YAML 1.2.2 रिविज़न प्रकाशित
2021

JSON में YAML की खास सुविधाओं का क्या होता है

एंकर (&defaults) और उसके एलियास (*defaults) से YAML में एक ब्लॉक दोबारा इस्तेमाल हो जाता है। JSON में रेफ़रेंस नहीं होते, इसलिए हर एलियास की जगह एंकर वाले ब्लॉक की पूरी कॉपी लिख दी जाती है।

  • JSON, YAML से काफ़ी लंबा हो सकता है
  • मर्ज की (<<: *defaults) भी इसी तरह फैला दी जाती हैं
एक छोटी YAML कॉन्फ़िग, सुव्यवस्थित JSON के रूप में
{
  "service": "billing",
  "replicas": 3,
  "ports": [8080, 9090],
  "env": {
    "LOG_LEVEL": "info",
    "REGION": "NO"
  }
}

YAML और JSON फॉर्मेट की जानकारी

YAML

YAML

YAML ("YAML Ain't Markup Language") एक इंसानों के पढ़ने लायक डेटा फ़ॉर्मेट है, जो पहली बार 2001 में जारी हुआ। यह ब्रैकेट की जगह इंडेंटेशन इस्तेमाल करता है, कमेंट सपोर्ट करता है और JSON का सुपरसेट है। इसका व्यापक उपयोग Docker Compose, Kubernetes, GitHub Actions और कई ऐप्लिकेशन की कॉन्फ़िगरेशन में होता है। व्हाइटस्पेस पर निर्भर होने के कारण एक गलत जगह लगा स्पेस इसे तोड़ सकता है, और "no" या तारीख़ जैसे कुछ मान अनपेक्षित रूप से समझे जा सकते हैं।

कंप्रेशन
–
ट्रांसपेरेंसी (पारदर्शिता)
–
एनिमेशन
–
शुरुआत का वर्ष
2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
YAML कन्वर्टर

JSON

JavaScript ऑब्जेक्ट नोटेशन

JSON संरचित डेटा के लिए हल्का टेक्स्ट फ़ॉर्मैट है, जिसे 2000 के दशक की शुरुआत में Douglas Crockford ने लोकप्रिय बनाया और जो RFC 8259 और ECMA-404 के रूप में मानकीकृत है। यह ऑब्जेक्ट, ऐरे, स्ट्रिंग, नंबर, बूलियन और null को सरल, पढ़ने योग्य सिंटैक्स में दिखाता है। लगभग हर प्रोग्रामिंग भाषा में वेब API, कॉन्फ़िगरेशन फ़ाइलों और ऐप्स के बीच डेटा के आदान-प्रदान का यह डिफ़ॉल्ट फ़ॉर्मैट है। इसमें कमेंट, तारीख़ें या स्कीमा बिल्ट-इन नहीं होते, और बड़ी नेस्टेड फ़ाइलें व्यूअर के बिना पढ़ना कठिन होता है।

कंप्रेशन
–
ट्रांसपेरेंसी (पारदर्शिता)
–
एनिमेशन
–
शुरुआत का वर्ष
2001 · Douglas Crockford
JSON कन्वर्टर

YAML को JSON में तब बदला जाता है जब इंसानों के लिए लिखी कॉन्फ़िग या स्पेक को मशीन तक पहुँचाना हो: API रिक्वेस्ट, स्कीमा वैलिडेटर या ऐसा टूल जिसमें YAML पार्सर नहीं है।

YAML से JSON कन्वर्टर: अक्सर पूछे जाने वाले सवाल

YAML और JSON में एक ही डेटा होता है, तो YAML को JSON में क्यों बदलें?

क्योंकि कई टूल इनमें से सिर्फ़ एक को पार्स करते हैं। JSON रीडर हर प्रोग्रामिंग भाषा और ब्राउज़र में मिलता है, जबकि YAML के लिए अलग लाइब्रेरी चाहिए। REST API की रिक्वेस्ट बॉडी, JSON Schema वैलिडेटर, jq और package.json या ब्राउज़र एक्सटेंशन की manifest.json जैसी फ़ाइलें, सब JSON ही मानती हैं।

मेरे YAML कमेंट्स का क्या होता है?

वे हट जाते हैं। RFC 8259 में JSON के लिए कमेंट सिंटैक्स है ही नहीं, इसलिए # से शुरू होने वाली लाइनों की कोई जगह नहीं बचती। कमेंट वाली YAML फ़ाइल को मूल स्रोत रखें और JSON को जनरेट की गई कॉपी मानें, जिसे आप कभी भी दोबारा बना सकते हैं।

NO या off, false में क्यों बदल गया?

YAML 1.1 को मानने वाले पार्सर yes, no, on और off को बूलियन पढ़ते हैं, इसलिए नॉर्वे का कंट्री कोड NO false बन सकता है। YAML 1.2 बूलियन को सिर्फ़ true और false तक सीमित रखता है, पर हर टूल इसे नहीं मानता। ऐसे मान YAML में "NO" की तरह कोट्स में लिखें, तब वे JSON में स्ट्रिंग ही रहेंगे।

क्या YAML में लिखा CloudFormation टेम्पलेट कन्वर्ट हो सकता है?

AWS CloudFormation दोनों फ़ॉर्मेट मानता है, लेकिन !Ref और !GetAtt जैसे शॉर्ट टैग सिर्फ़ YAML में होते हैं। JSON टेम्पलेट में इन्हें पूरे फ़ंक्शन की तरह लिखा जाता है, जैसे {"Ref": "MyBucket"} या {"Fn::GetAtt": [...]}। कन्वर्ट करने से पहले शॉर्ट टैग को लंबे रूप में लिख दें ताकि JSON टेम्पलेट मान्य रहे।

JSON को वापस YAML में कैसे बदलें?

JSON से YAML का इस्तेमाल करें। जब किसी API रिस्पॉन्स या जनरेट की गई फ़ाइल को रिपॉज़िटरी में पढ़ने लायक कॉन्फ़िग फ़ाइल बनाना हो, तो आमतौर पर यही दिशा चुनी जाती है।