YamlBox

Codegeneratoren

JSON zum Go Struct Generator

Fügen Sie JSON ein und erhalten Sie in Sekundenschnelle Strukturen im GOFMT-Stil mit korrekten JSON-Tags. Optionale Felder, die über Array-Elemente hinweg erkannt werden, werden „Omitempty“, Nullable-Werte werden zu Zeigern und Ints bleiben Ints.

Konvertierungsoptionen

JSON Probe

Beispiele: Benutzerobjekt · Webhook-Ereignis —⌘/Strg + Eingabetaste konvertiert · legt eine Datei ab, um sie zu laden · lokal verarbeitet

Go-Strukturen

Die Ausgabe ist schreibgeschützt. Verwenden Sie Kopieren, Herunterladen oder Teilen, um es zu verschieben.

So verwenden Sie das JSON zum Mitnehmen-Tool

  1. Fügen Sie Ihr JSON ein

    Eine Antwort von dem API, den Sie integrieren, funktioniert am besten. Fügen Sie mehrere Array-Elemente ein, damit optionale Felder sichtbar sind.

  2. Legen Sie den Stammtypnamen fest

    Benennen Sie es nach der Ressource: Benutzer, Ereignis, Bestellung. Verschachtelte Typen werden automatisch anhand ihrer Schlüssel benannt.

  3. Kopieren Sie es in Ihre Go-Datei

    In Ihr Projekt einfügen und gofmt ausführen. Feldnamen werden groß geschrieben, Tags stimmen genau mit den Originalschlüsseln überein, sodass json.Unmarshal sofort funktioniert.

Was macht dieses Tool anders?

  • JSON-Tags, die den Originalschlüsseln treu bleiben, einschließlich „snake_case“ und „dashes“.
  • omitempty für Felder, die in einigen Array-Elementen fehlen
  • Zeigertypen für echte Nullable-Werte (*String), also Null-Unmarshalling sauber
  • int vs. float64 aus tatsächlichen Beispielwerten; irgendein für unvereinbare Mischungen
  • gofmt-kompatible Ausgabe mit Tabulatoreinzug

Datenschutz durch Architektur: Diese Seite enthält keine Analysen, die Ihre Eingaben empfangen, und der Konvertierungscode wird in Ihrem Tab ausgeführt. Nach dem Laden können Sie die Verbindung zum Netzwerk trennen und weiterarbeiten.

JSON zum Mitnehmen – häufig gestellte Fragen

Warum werden einige Felder zu Zeigern?

Ein JSON-Nullwert kann nicht in einem einfachen String oder int gespeichert werden, daher erhält ein nullfähiges Feld einen Zeiger (*string, *int). Dadurch kann Encoding/JSON ohne Fehler zwischen „abwesend“ und „vorhanden, aber null“ unterscheiden, wozu Zeigertypen genau dienen.

Was passiert, wenn ein Feld gemischte Typen hat?

Wenn ein Wert in einem Element eine Zeichenfolge und in einem anderen eine Zahl ist, verwendet der Generator einen beliebigen, anstatt einen falschen konkreten Typ zu erfinden. Sie können sich dann für einen benutzerdefinierten UnmarshalJSON entscheiden, wenn der API wirklich so locker ist.

Enthalten die generierten Tags omitempty?

Nur für Felder, die in mindestens einem Element Ihrer Stichprobe fehlten. Erforderliche Felder erhalten einfache Tags, sodass beim Roundtrip keine Daten verloren gehen.

Ist die Ausgabe gofmt-kompatibel?

Ja – Tabulatoren, Ausrichtung und Feldreihenfolge folgen den Gofmt-Konventionen. Führen Sie nach dem Einfügen gofmt -l aus und es sollten keine Änderungen gemeldet werden.

Kann ich Strukturen für große Antworten generieren?

Ja. Verschachtelte Objekte werden zu separaten benannten Strukturen, während ein Durchlaufen im geparsten JSON unmöglich ist, sodass selbst tief verschachtelte Nutzlasten einen flachen, lesbaren Satz von Typen erzeugen.

Auf der Suche nach “json in Golang-Struktur umwandeln”, “Gehen Sie zum Strukturgenerator”, “json, um online zu gehen”? Hier sind Sie richtig – Durchsuchen Sie alle 19 Tools.

Tiefergehende Lektüre

Blogartikel · 5 Minuten Lesezeit JSON to Go: Strukturiert das Unmarshalieren beim ersten Konvertieren Sie JSON in Go-Strukturen mit korrekten Feldnamen und JSON-Tags, einschließlich verschachtelter Typen – plus den zu beobachtenden numerischen, Null- und Zeitfallen. Lesen Sie die Anleitung →