tigtools

YAML-zu-JSON-Konverter

Fügen Sie YAML ein (ein Kubernetes-Manifest, eine CI-Datei, eine OpenAPI-Spezifikation oder eine Konfiguration) und erhalten Sie sofort formatiertes JSON. Es wird nichts hochgeladen.

Läuft in Ihrem Browser Keine Anmeldung erforderlich

Einrückung

Stattdessen JSON in YAML umwandeln

Anleitung

  1. Fügen Sie YAML in das Eingabefeld ein oder probieren Sie das Beispiel.
  2. Wählen Sie 2 oder 4 Leerzeichen für die Einrückung.
  3. Kopieren Sie das JSON oder laden Sie es als .json-Datei herunter.

So funktioniert es

Das YAML wird mit der Open-Source-yaml-Bibliothek nach dem YAML-1.2-Core-Schema geparst, das moderne Tools erwarten: yes, no, on und off bleiben Strings, nur true und false sind Boolesche Werte. Anker (&name) und Aliase (*name) werden aufgelöst, und <<-Merge-Keys werden angewendet. Die Anzahl der Alias-Auflösungen ist begrenzt, sodass gezielt explodierende Dokumente abgelehnt werden, statt die Seite einfrieren zu lassen.

Eine Datei mit mehreren durch --- getrennten Dokumenten wird zu einem JSON-Array mit einem Element pro Dokument. Kommentare, Anker und Tags haben keine JSON-Entsprechung und entfallen; die Reihenfolge der Schlüssel bleibt erhalten. Zeitstempel bleiben Strings. Ganzzahlen mit mehr als etwa 15 Stellen verlieren an Präzision, wie bei jedem in JavaScript verarbeiteten JSON.

Wenn das YAML ungültig ist, wird der erste Fehler mit Zeile und Spalte angezeigt, z. B. ein für die Einrückung verwendeter Tab oder eine fehlende schließende Klammer. Für die andere Richtung verwenden Sie JSON zu YAML oder den bidirektionalen JSON ⇄ YAML-Konverter.

Beispiele

CI-Datei mit Ankern

Eine Jobliste, die einen defaults-Block mit <<: *defaults wiederverwendet, wird zu JSON, wobei die Defaults in jeden Job kopiert werden – so sehen Sie genau, was jeder Job erhält.

Kubernetes-Datei mit mehreren Dokumenten

Eine Datei mit einem Deployment und einem Service, getrennt durch ---, wird zu einem JSON-Array aus zwei Objekten – bereit für kubectl oder jq.

Häufig gestellte Fragen

Warum bleibt yes ein String?

YAML 1.2, das hier und von den meisten aktuellen Tools verwendet wird, behandelt nur true und false als Boolesche Werte. Ältere YAML-1.1-Parser machten aus yes, no, on und off Boolesche Werte, was viele Fehler verursachte.

Was passiert mit Kommentaren?

JSON hat keine Kommentare, daher entfallen sie. Die Daten selbst bleiben unverändert.

Gibt es eine Größenbeschränkung?

Nur der Arbeitsspeicher Ihres Browsers. Große Dateien werden nach einer kurzen Pause während der Eingabe konvertiert, damit die Seite reaktionsfähig bleibt.

Datenschutz

Die Konvertierung erfolgt vollständig in Ihrem Browser. Ihre YAML- und JSON-Daten werden nicht hochgeladen oder gespeichert.