YAML-zu-JSON-Konverter

Konvertiert YAML-Daten in JSON. Wandelt Strukturen, die in YAML geschrieben sind – Kubernetes-Manifeste, docker-compose.yml, CI-Konfigurationsdateien – sofort im Browser in ein Format um, das reine JSON-Werkzeuge wie jq verarbeiten können.

Tipps zur Nutzung

  • Fügen Sie ein Kubernetes-Manifest oder eine docker-compose.yml direkt ein, um die Struktur als JSON sichtbar zu machen – so können Kommandozeilenwerkzeuge wie jq, die nur JSON verstehen, sie abfragen.
  • Unquotierte Werte mit führender Null, etwa Postleitzahlen oder Telefonnummern, werden als Zahlen interpretiert und verlieren dabei die führende Null – setzen Sie Werte, die als Text erhalten bleiben sollen, immer in Anführungszeichen.
  • Komplexes YAML mit Ankern (`&`), Aliassen (`*`) oder Block-Skalaren (`|`/`>`) wird nicht unterstützt. Schreiben Sie es vor dem Einfügen in eine einfachere Form um.
  • Deaktivieren Sie „Formatierte Anzeige“, um ein einzeiliges JSON ohne Zeilenumbrüche zu erhalten – praktisch, wenn Sie es in einen API-Request-Body einfügen möchten, in dem keine Zeilenumbrüche gewünscht sind.

Häufig gestellte Fragen

Das ist hilfreich, wenn Sie ein Kubernetes-Manifest oder eine CI-Konfigurationsdatei mit einem reinen JSON-Kommandozeilenwerkzeug wie jq abfragen oder verarbeiten möchten, oder wenn eine API oder ein Skript nur JSON akzeptiert und kein YAML direkt entgegennimmt.

Nein. Dieses Werkzeug ist ein schlanker Parser, der auf die gängigsten Konstrukte (Mappings, Sequenzen, einfache Skalare) beschränkt ist. Funktionen zur Wiederverwendung von Werten wie Anker und Aliasse, Multi-Dokument-Streams und Block-Skalare (`|`/`>`) liegen daher außerhalb des Funktionsumfangs.

Die häufigste Ursache ist eine uneinheitliche Einrückung – Elemente auf derselben Ebene mit unterschiedlicher Anzahl an Leerzeichen oder eine Einrückung mit Tabulatoren statt Leerzeichen. Auch ein fehlendes Leerzeichen nach dem Doppelpunkt in `Schlüssel: Wert` führt zu einem Analysefehler.

Dieses Werkzeug unterstützt nur die Richtung von YAML zu JSON. Wenn Sie JSON oder YAML separat formatieren oder validieren möchten, nutzen Sie die anderen Formatierungswerkzeuge dieser Website.
ツールくん

Übrigens – Warum Konfigurationsdateien in YAML geschrieben werden, Werkzeuge aber JSON verlangen

YAML wird häufig für Konfigurationsdateien verwendet, die Menschen direkt bearbeiten – Kubernetes, docker-compose, GitHub-Actions-Workflows, Ansible-Playbooks –, weil es dank Kommentaren und größtenteils optionaler Anführungszeichen gut lesbar ist. JSON hingegen besitzt eine kleine, eindeutige Spezifikation, die sich leicht maschinell verarbeiten lässt, weshalb es sich als Standardformat für den Datenaustausch von APIs und Kommandozeilenwerkzeugen wie jq etabliert hat.

Die Konvertierung von YAML zu JSON überbrückt diese Lücke zwischen „Menschen schreiben YAML, Werkzeuge wollen JSON“. Gerade Kubernetes-Manifeste können mehrere hundert Zeilen umfassen, und `grep` allein stößt bei der Suche nach einem bestimmten Wert schnell an seine Grenzen. Wandelt man zuerst in JSON um und fragt dann mit jq ab, lässt sich mit einem Pfad wie `.spec.containers[].image` genau der benötigte Wert extrahieren.

Allerdings ist die vollständige YAML-Spezifikation (YAML 1.2) sehr umfangreich und umfasst fortgeschrittene Funktionen wie die Wiederverwendung von Werten über Anker und Aliasse, Multi-Dokument-Streams und Block-Skalare für mehrzeilige Strings. Dieses Werkzeug verzichtet bewusst auf diesen gesamten Funktionsumfang und konzentriert sich auf die „gemeinsame Teilmenge“ aus Mappings, Sequenzen und einfachen Skalaren, die in der Praxis am häufigsten vorkommt – so bleibt die Implementierung einfach und ganz ohne externe Abhängigkeiten.

→ Alle Wissenstexte ansehen