YAML üçün JSON Çevirici
YAML-dən JSON-a sürətli və təhlükəsiz çevrilmə. Konfiqurasiya faylları və məlumatların təhlili üçün mükəmməldir.
YAML-dən JSON-a sürətli və təhlükəsiz çevrilmə. Konfiqurasiya faylları və məlumatların təhlili üçün mükəmməldir.
YAML və JSON bir-biri ilə sıx əlaqəli formatlardır - JSON texniki cəhətdən YAML 1.2-nin ciddi alt dəstidir - və onlar arasında konvertasiya adətən sadədir. YAML JSON-da çatışmayan insan dostu xüsusiyyətləri əlavə edir: şərhlər, qaçmadan çox sətirli sətirlər, lövbər və ləqəb istinadları, daha çevik sitat və təbii sənəd tərtibatına bənzəyən girinti əsaslı struktur. Bu, YAML-ni konfiqurasiya faylları (Kubernetes manifestləri, GitHub Actions iş axınları, Docker Compose) üçün populyar seçim edir, halbuki JSON API yüklərində üstünlük təşkil edir.
YAML-i JSON-a çevirmək adətən maşınların daha asan təhlil etdiyi və HTTP API-lərinin lingua franca olan formatı müqabilində YAML-in insan dostu əlavələrindən imtina etmək deməkdir. Şərhlər silinir (JSON-da yoxdur). Çapa istinadları onların referent dəyərlərinə həll edilir. Çox sətirli sətirlər daxili yeni sətirlərlə standart JSON sətirlərinə yığılır.
Bu çevirici JavaScript-də ən çox istifadə olunan YAML kitabxanası olan js-yaml istifadə edərək YAML-i təhlil edir. Nəticə əlavə abzas ilə JSON.stringify istifadə edərək yaradılır. Dönüşüm bütün standart YAML 1.2 sintaksisini idarə edir, o cümlədən axın tərzi, blok üslubu, skalarlar, ardıcıllıqlar, xəritələr, lövbərlər, ləqəblər və standart etiket növləri.
Əksər API və bir çox proqramlaşdırma mühiti JSON-u gözləyir. Yalnız JSON-u qəbul edən kod və ya xidmətlərlə inteqrasiya olunarkən YAML-də yazılmış konfiqurasiya faylları JSON-a çevrilməlidir. JSON üçün alətlər də daha zəngindir: jq, JSON Path, JSON Schema və validator və transformatorların geniş ekosistemi hamısı JSON girişini qəbul edir.
JSON, YAML-in olmadığı yollarla da birmənalı deyil. YAML-in çevikliyi təhlil sürprizləri yaradır - YAML 1.1-də boolean false kimi təhlil edilən "yox" kimi sətirlər, float kimi təhlil edilən versiya sətirləri, səssiz struktur dəyişiklikləri yaradan girinti xətaları. JSON-a çevirmək məlumatları daha az qeyri-müəyyən formada dondurur.
YAML yapışdırın, JSON əldə edin.
js-yaml YAML 1.2-ni YAML 1.1 qəribəlikləri üçün əlavə dəstək ilə həyata keçirir ("yanlış-yalan məsələsi, 0o prefiksi olmayan səkkizlik ədədlər). Təhlilçi yerli növlərdən istifadə edərək JavaScript obyekt ağacını yaradır: ədədlər, sətirlər, booleanlar, null, massivlər və düz obyektlər.
JSON.stringify obyekt ağacını JSON-a seriallaşdırır. İsteğe bağlı girinti olduqca çap edilmiş çıxış yaradır; onsuz nəticə kompakt tək sətirli JSON-dur. Xüsusi dəyərlər (NaN, Sonsuzluq, müəyyən edilməmiş) etibarlı JSON deyil; çevirici onları mövcud olduqda sıfıra məcbur edir.
Kənar hallar: YAML vaxt ştampları JSON-da ISO-8601 sətirlərinə çevrilir. YAML ikili verilənləri (base64 kodlu) sətir olur. Lövbərlər və ləqəblər JSON-da dublikat dəyərlərə çevrilir, çünki JSON-un istinad sintaksisi yoxdur.