JSON a Struttura Go
Converti un campione JSON in definizioni di struttura Go con tipi e tag dedotti.
JSON a Struttura Go
Incolla un campione JSON e questo strumento genererà le definizioni di struttura Go corrispondenti con tag json. Deduce int, float64, string, bool e null per ogni campo, crea strutture denominate o incorporate per oggetti annidati, e determina tipi di slice per array — inclusi slice di oggetti che hanno la propria struttura riutilizzabile.
Le opzioni modellano il codice generato. Denomina la struttura radice tu stesso o lascia che lo strumento la deduca. Scegli come vengono scritti i tag — mantieni la chiave originale o convertila in snake_case o camelCase indipendentemente da come il campo originale è stato denominato. Abilita "Aggiungi omitempty" per aggiungerlo a ogni tag, e "Puntatori per campi opzionali" per contrassegnare i campi mancanti o null nelle parti del campione con un tipo di puntatore. Quando gli oggetti dell'array hanno campi leggermente diversi, "Unisci forme elementi array" li combina in una struttura con campi aggiuntivi contrassegnati come opzionali anziché rinunciare al tipo di elemento. Per i valori che lo strumento non può determinare, scegli interface{}, l'alias any o json.RawMessage per la decodifica differita.
Questo è il passaggio prima di scrivere un client API o un caricatore di configurazione in Go: incolla una risposta reale o un campione di configurazione e ottieni una struttura iniziale anziché digitare manualmente i nomi dei campi e i tag. Le strutture annidate possono rimanere come tipi denominati separati per il riutilizzo in altre parti del pacchetto, o essere renderizzate inline quando una forma viene utilizzata una sola volta. Per i campi il cui tag non corrisponde più alla chiave JSON originale, è disponibile un commento con la chiave originale.
Tutto viene eseguito localmente nel tuo browser — il JSON che inclli, che potrebbe includere risposte API reali o configurazione interna, non viene mai caricato. Copia il risultato, scaricalo come file .txt o sposta l'output nell'input per perfezionare il campione e rigenerare.