Generazione di JSON di esempio da una struttura Go
Strumento che converte automaticamente le strutture Go e le loro etichette json in dati JSON di esempio. Gestisce strutture annidate, sezioni, l'opzione omitempty e l'etichetta json:"-", ed è utile per preparare simulacri di interfacce, esempi in Postman e carichi di prova per lo sviluppo dell'interfaccia utente.
Consigli per l'uso
- Incollando più strutture insieme, i tipi dei campi annidati sono risolti automaticamente e l'oggetto di esempio è generato in modo ricorsivo; se una definizione manca, il campo è sostituito con un oggetto vuoto {} e compare un avviso.
- Indicando il nome della struttura potete scegliere quale usare come radice anche quando il testo ne contiene diverse; lasciando vuoto il campo si adotta la prima che compare.
- I campi con l'etichetta json:"-" sono esclusi dal risultato. Quelli con omitempty conservano invece la chiave, che potete eliminare a mano se non vi serve.
- I valori generati sono soltanto segnaposto scelti in base al tipo: "example" per le stringhe, 1 per i numeri. Se li usate come esempio reale di risposta, sostituiteli con dati veri.
- Questo strumento è l'inverso di quello affine che converte il JSON in strutture Go: dalle strutture definite nei gestori Go potete ricavare rapidamente carichi di esempio per chi sviluppa l'interfaccia utente o per la squadra di collaudo.
Domande frequenti
A proposito — l'idea di invertire la conversione da JSON a struttura Go
Realizzando un'interfaccia web in Go, la struttura della risposta si definisce di norma combinando le strutture con le etichette json. Ma quando chi sviluppa l'interfaccia utente o chi si occupa del collaudo vuole verificare il comportamento dell'interfaccia, leggere il codice Go e tradurre mentalmente in JSON il tipo di ogni campo è un lavoro faticoso e facilmente foriero di fraintendimenti.
Questo strumento compie esattamente la conversione inversa di quello affine che trasforma il JSON in strutture Go: basta incollare la definizione della struttura per ottenere un JSON di esempio con i nomi delle chiavi presi dalle etichette json e valori segnaposto scelti in base al tipo, pronto per gli esempi di Postman o per i dati simulati dell'interfaccia utente.
Non si tratta però di un vero compilatore Go, bensì di un analizzatore semplificato basato su espressioni regolari e su una lettura riga per riga. Gestisce le definizioni di campo semplici e risolve le strutture annidate incollate insieme, ma può non interpretare correttamente notazioni complesse come le strutture anonime annidate o le definizioni di tipo distribuite su più righe. Usatelo come punto di partenza e verificate le specifiche definitive sul codice sorgente.