YAML ते JSON कनवर्टर
जलद आणि सुरक्षित YAML ते JSON रूपांतरण. कॉन्फिगरेशन फाइल्स आणि डेटा विश्लेषणासाठी योग्य.
जलद आणि सुरक्षित YAML ते JSON रूपांतरण. कॉन्फिगरेशन फाइल्स आणि डेटा विश्लेषणासाठी योग्य.
YAML आणि JSON हे जवळून संबंधित स्वरूप आहेत — JSON तांत्रिकदृष्ट्या YAML 1.2 चा एक कठोर उपसंच आहे — आणि त्यांच्यामध्ये रूपांतर करणे सहसा सरळ असते. YAML मानवी-अनुकूल वैशिष्ट्ये जोडते ज्याचा JSON मध्ये अभाव आहे: टिप्पण्या, एस्केपिंगशिवाय मल्टी-लाइन स्ट्रिंग, अँकर आणि उपनाम संदर्भ, अधिक लवचिक कोटिंग आणि नैसर्गिक दस्तऐवज लेआउट सारखी इंडेंटेशन-आधारित रचना. हे YAML ला कॉन्फिगरेशन फाइल्ससाठी लोकप्रिय पर्याय बनवते (कुबर्नेट्स मॅनिफेस्ट, गिटहब ॲक्शन वर्कफ्लो, डॉकर कंपोज) तर JSON API पेलोड्सवर प्रभुत्व मिळवते.
YAML चे JSON मध्ये रूपांतर करणे म्हणजे सामान्यतः YAML च्या मानव-अनुकूल अतिरिक्त गोष्टींचा त्याग करणे ज्या फॉरमॅटमध्ये मशीन अधिक सहजपणे पार्स करतात आणि ती HTTP API ची भाषा आहे. टिप्पण्या टाकल्या आहेत (JSON नाही). अँकर संदर्भ त्यांच्या संदर्भ मूल्यांमध्ये सोडवले जातात. एम्बेड केलेल्या नवीन लाइन्ससह मल्टी-लाइन स्ट्रिंग मानक JSON स्ट्रिंगवर संकुचित होतात.
हे कनवर्टर JS-yaml वापरून YAML पार्स करते, JavaScript मधील सर्वात जास्त वापरलेली YAML लायब्ररी. पर्यायी इंडेंटेशनसह JSON.stringify वापरून आउटपुट तयार केले जाते. रूपांतरण सर्व मानक YAML 1.2 वाक्यरचना हाताळते ज्यात प्रवाह शैली, ब्लॉक शैली, स्केलर, अनुक्रम, मॅपिंग, अँकर, उपनाम आणि मानक टॅग प्रकार समाविष्ट आहेत.
बहुतेक API आणि अनेक प्रोग्रामिंग वातावरण JSON ची अपेक्षा करतात. YAML मध्ये लिहिलेल्या कॉन्फिगरेशन फायली फक्त JSON स्वीकारणाऱ्या कोड किंवा सेवांसह एकत्रित करताना JSON मध्ये रूपांतरित करणे आवश्यक आहे. JSON साठी टूलिंग देखील अधिक मुबलक आहे: jq, JSON पथ, JSON स्कीमा, आणि प्रमाणीकरण आणि ट्रान्सफॉर्मर्सची विस्तृत इकोसिस्टम सर्व JSON इनपुट गृहीत धरतात.
JSON देखील YAML नसलेल्या मार्गाने अस्पष्ट आहे. YAML ची लवचिकता पार्सिंग आश्चर्यचकित करते — YAML 1.1 मध्ये बुलियन फॉल्स म्हणून 'नो' पार्सिंग सारख्या स्ट्रिंग्स, फ्लोट्स म्हणून पार्सिंग व्हर्जन स्ट्रिंग्स, इंडेंटेशन त्रुटी मूक संरचनात्मक बदल निर्माण करतात. JSON मध्ये रूपांतरित केल्याने डेटा कमी-अस्पष्ट स्वरूपात गोठतो.
YAML पेस्ट करा, JSON मिळवा.
js-yaml YAML 1.1 quirks साठी पर्यायी समर्थनासह YAML 1.2 लागू करते ('no'-as-false समस्या, 0o उपसर्ग नसलेली अष्टांक). पार्सर नेटिव्ह प्रकार वापरून JavaScript ऑब्जेक्ट ट्री तयार करतो: संख्या, स्ट्रिंग्स, बुलियन्स, नल, ॲरे आणि प्लेन ऑब्जेक्ट्स.
JSON.stringify ऑब्जेक्ट ट्रीला JSON वर अनुक्रमित करते. पर्यायी इंडेंटेशन सुंदर-मुद्रित आउटपुट तयार करते; त्याशिवाय परिणाम कॉम्पॅक्ट सिंगल-लाइन JSON आहे. विशेष मूल्ये (NaN, अनंत, अपरिभाषित) वैध JSON नाहीत; कन्व्हर्टर त्यांना जेथे उपस्थित असेल तेथे शून्य करण्यासाठी जबरदस्ती करतो.
एज केस: YAML टाइमस्टॅम्प JSON मध्ये ISO-8601 स्ट्रिंग बनतात. YAML बायनरी डेटा (base64-encoded) एक स्ट्रिंग बनतो. अँकर आणि उपनाम JSON मधील डुप्लिकेट मूल्यांमध्ये सोडवले जातात, कारण JSON कोणताही संदर्भ वाक्यरचना नसतो.