YAML'ye JSON Dönüştürücü
Hızlı ve güvenli YAML'den JSON'a dönüştürme. Yapılandırma dosyaları ve veri analizi için mükemmeldir.
Hızlı ve güvenli YAML'den JSON'a dönüştürme. Yapılandırma dosyaları ve veri analizi için mükemmeldir.
YAML ve JSON birbiriyle yakından ilişkili formatlardır (JSON teknik olarak YAML 1.2'nin katı bir alt kümesidir) ve bunlar arasında dönüşüm genellikle basittir. YAML, JSON'da bulunmayan insan dostu özellikler ekler: yorumlar, kaçışsız çok satırlı dizeler, bağlantı ve takma ad referansları, daha esnek alıntılama ve doğal belge düzenine benzeyen girintiye dayalı yapı. Bu, YAML'yi yapılandırma dosyaları (Kubernetes bildirimleri, GitHub Actions iş akışları, Docker Compose) için popüler bir seçim haline getirirken JSON, API yüklerine hakim olur.
YAML'yi JSON'a dönüştürmek genellikle, makinelerin daha kolay ayrıştırdığı ve HTTP API'lerinin ortak dili olan bir format karşılığında YAML'ın insan dostu ekstralarından vazgeçmek anlamına gelir. Yorumlar kaldırıldı (JSON'da hiç yok). Çapa referansları referans değerlerine çözümlenir. Çok satırlı dizeler, yerleşik yeni satırlara sahip standart JSON dizelerine daraltılır.
Bu dönüştürücü, YAML'yi, JavaScript'te en yaygın kullanılan YAML kitaplığı olan js-yaml'ı kullanarak ayrıştırır. Çıktı, isteğe bağlı girintili JSON.stringify kullanılarak oluşturulur. Dönüşüm, akış stili, blok stili, skalerler, diziler, eşlemeler, çapalar, takma adlar ve standart etiket türleri dahil olmak üzere tüm standart YAML 1.2 sözdizimini yönetir.
Çoğu API ve birçok programlama ortamı JSON'u bekler. YAML'de yazılan yapılandırma dosyalarının, yalnızca JSON'u kabul eden kod veya hizmetlerle entegrasyon sırasında JSON'a dönüştürülmesi gerekir. JSON için araçlar da daha fazladır: jq, JSON Yolu, JSON Şeması ve geniş bir doğrulayıcı ve dönüştürücü ekosisteminin tümü JSON girişini varsayar.
JSON, YAML'ın olmadığı açılardan da açıktır. YAML'in esnekliği ayrıştırmada sürprizler yaratır; YAML 1.1'de 'hayır' dizelerinin boolean false olarak ayrıştırılması, sürüm dizelerinin kayan nokta olarak ayrıştırılması, sessiz yapısal değişikliklere neden olan girintileme hataları. JSON'a dönüştürmek, verileri daha az belirsiz bir biçime dondurur.
YAML'yi yapıştırın, JSON'u edinin.
js-yaml, YAML 1.1 tuhaflıkları için isteğe bağlı destekle birlikte YAML 1.2'yi uygular (yanlış olarak 'hayır' sorunu, 0o öneki olmayan sekizlik sayılar). Ayrıştırıcı, yerel türleri kullanarak bir JavaScript nesne ağacı oluşturur: sayılar, dizeler, boolean'lar, boş değerler, diziler ve düz nesneler.
JSON.stringify, nesne ağacını JSON'a serileştirir. İsteğe bağlı girinti, güzel basılmış çıktılar üretir; onsuz sonuç kompakt tek satırlı JSON'dur. Özel değerler (NaN, Infinity, tanımsız) geçerli JSON değildir; dönüştürücü onları mevcut olduğu yerde null değerine zorlar.
Uç durumlar: YAML zaman damgaları JSON'da ISO-8601 dizeleri haline gelir. YAML ikili verileri (base64 kodlu) bir dize haline gelir. JSON'un referans sözdizimi olmadığından, çapalar ve takma adlar JSON'da yinelenen değerlere çözümlenir.