JSON in Zod-Schema
JSON to Zod Schema
Baut aus einem JSON-Beispiel ein Zod-Schema, mit Ableitung von nullable, optional und enum.
Macht aus einem JSON-Beispieldokument ein Zod-Schema – die Laufzeitprüfung, die TypeScript-Typen Ihnen nicht geben können. Die Ausgabe ist ein Satz von `z.object`-Konstanten in Deklarationsreihenfolge plus ein abgeleiteter Typ für die Wurzel, sodass ein Einfügen Ihnen Parser und Typ zugleich liefert.
Beispiel-JSON
Eine .json-Datei ablegen
Wird in diesem Tab gelesen. Nichts wird hochgeladen.
Geben Sie ihm jedes Element, das Sie haben. Jeder weitere Datensatz engt die Vermutung ein – ein Feld, das in einem davon fehlt, ist genau das, was es optional macht.
TypeScript
So funktioniert es
Fügen Sie so viele Datensätze ein, wie Sie haben
Jedes Element jedes Arrays wird gelesen und zusammengeführt, nicht nur das erste. Drei Datensätze sagen weit mehr als einer, denn ein Feld, das in einem davon fehlt, ist genau das, was dieses Feld optional macht.
Benennen Sie den Wurzeltyp
Verschachtelte Objekte werden nach dem Schlüssel benannt, der sie enthält, bei Arrays in die Einzahl gesetzt, sodass `users` ein `User` ergibt. Nur die Wurzel braucht einen Namen von Ihnen.
Lesen Sie die Zähler unter der Ausgabe
Typen, optionale Felder, Unions und wie viele Datensätze zusammengeführt wurden. Ein Union-Zähler über null bedeutet, dass ein Feld in Ihrer Stichprobe zwei verschiedene Arten von Wert hatte – einen Blick wert, bevor Sie das Ergebnis in eine Codebasis einfügen.
Fügen Sie es ein und parsen Sie damit
Die Blöcke werden Kinder zuerst ausgegeben, was bei Zod zählt: Ein `z.object`, das auf eine später deklarierte Konstante verweist, wirft beim Import, statt an der Typprüfung zu scheitern. Behalten Sie die Reihenfolge wie erzeugt bei.
Häufige Fragen
Warum passt das Schema nicht zu meinem API-Vertrag?
Weil es die Stichprobe beschreibt, nicht den Vertrag. Ein als optional markiertes Feld fehlte schlicht in einem der eingefügten Datensätze; ein als erforderlich markiertes Feld kann in einer API, von der Sie noch nicht genug gesehen haben, trotzdem optional sein. Behandeln Sie die Ausgabe als ersten Entwurf, den Sie von Hand nachschärfen.
Gibt es Verfeinerungen – E-Mail, UUID, Mindestlänge?
Keine. Alles ist `z.string()`, `z.number()` oder `z.boolean()`, mit `.int()`, wenn jede Zahl in der Stichprobe ganzzahlig war. Ein `.email()` hinzuzufügen, weil ein String ein @ enthielt, wäre geraten, und eine falsche Verfeinerung lehnt in Produktion gültige Daten ab.
Was geschieht mit einem leeren Array?
Es wird zu `z.array(z.unknown())`, denn ein leeres Array sagt nichts über seinen Elementtyp. Fügen Sie einen Datensatz ein, in dem das Array nicht leer ist, und das Schema füllt sich von selbst.
Für welche Zod-Version ist das?
Die ausgegebenen Aufrufe sind die, die in Zod 3 und 4 gleich sind – `z.object`, `z.array`, `z.union`, `.nullable()`, `.optional()` und `z.record(z.string(), z.unknown())` in seiner Zwei-Argument-Form. Nichts Versionsspezifisches wird verwendet.
Eingabe aus
JSON in TypeScript
JSON to TypeScript
Leitet aus einem JSON-Beispiel TypeScript-Interfaces oder -Typen ab und führt optionale und Union-Felder zusammen.
JSON in JSON Schema
JSON to JSON Schema
Leitet aus einem oder mehreren Beispielen ein JSON Schema ab und vereinigt die gesehenen Formen.
JSON formatieren und validieren
JSON Formatter & Validator
Formatiert, minimiert und validiert JSON und zeigt bei Syntaxfehlern die genaue Zeile und Spalte.
YAML formatieren und validieren
YAML Formatter & Validator
Rückt YAML einheitlich ein, validiert es und markiert die Tab- und Anker-Fehler, an denen Parser scheitern.
Danach
Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.
JSON-Schema-Validator
JSON Schema Validator
Validiert ein Dokument gegen ein JSON Schema und meldet jeden Fehler mit seinem Instanzpfad.
JSON in JSON Schema
JSON to JSON Schema
Leitet aus einem oder mehreren Beispielen ein JSON Schema ab und vereinigt die gesehenen Formen.
JSON in TypeScript
JSON to TypeScript
Leitet aus einem JSON-Beispiel TypeScript-Interfaces oder -Typen ab und führt optionale und Union-Felder zusammen.
Base64 kodieren und dekodieren
Base64 Encoder & Decoder
Kodiert und dekodiert Base64 und Base64URL für Text oder Dateien und behandelt UTF-8 korrekt.
curl in Code
curl to Code
Wandelt einen curl-Befehl in fetch, axios, Python requests, Go, PHP oder PowerShell um.
Text-Hash
Text Hash
Berechnet MD5, SHA-1, SHA-256, SHA-384, SHA-512 und CRC-32 einer Zeichenkette, wahlweise in Großbuchstaben oder als Base64.