Preskoči na sadržaj
100% lokalno

JSON u Go Strukturu

Pretvori primjer JSON u Go definicije strukture s izvedenim tipovima i oznakama.

Unos
Rezultat

JSON u Go Strukturu

Zalijepite primjer JSON i ovaj alat će generirati odgovarajuće Go definicije strukture s json oznakama. Izvodi int, float64, string, bool i null za svako polje, kreira nazvane ili ugnježđene strukture za ugniježđene objekte i određuje vrste rezina za nizove — uključujući rezine objekata koje imaju vlastitu ponovno iskoristivu strukturu.

Opcije oblikuju generirani kod. Nazovite root strukturu sami ili dopustite alatu da je izvede. Odaberite kako se pišu oznake — zadržite originalni ključ ili ga pretvorite u snake_case ili camelCase, bez obzira na to kako je originalno polje denominirano. Omogućite "Dodaj omitempty" da ga dodamo svakoj oznaci, i "Pokazivači za opcionalna polja" da označimo polja koja nedostaju ili su null u dijelovima primjera s tipom pokazivača. Kada objekti niza imaju nešto drugačija polja, "Spoji oblike elemenata polja" kombinira ih u jednu strukturu s dodatnim poljima označenim kao opcionalna umjesto da odustanemo od tipa elementa. Za vrijednosti koje alat ne može odrediti, odaberite interface{}, alias any ili json.RawMessage za odgođeno dekodiranje.

Ovo je korak prije pisanja API klijenta ili opterećenja konfiguracije u Go: zalijepite stvarni odgovor ili primjer konfiguracije i dobijete početnu strukturu umjesto ručnog pisanja imena polja i oznaka. Ugniježđene strukture mogu ostati kao odvojeni nazvani tipovi za ponovno korištenje negdje drugdje u paketu, ili se mogu prikazati u liniji kada se oblik koristi samo jednom. Za polja čija oznaka više ne odgovara izvornom JSON ključu, dostupan je komentar s izvornim ključem.

Sve se izvršava lokalno u vašem pregledniku — JSON koji zalijepite, koji bi mogao sadržavati stvarne API odgovore ili internu konfiguraciju, nikada se ne učitava. Kopirajte rezultat, preuzmite ga kao .txt datoteku ili premjestite output u input kako biste rafinirali primjer i ponovno generirali.

FAQ

Radi li s ugniježđenim objektima i nizovima?
Da. Ugniježđeni objekti postaju njihova vlastita nazvana struktura (ili ugnježđena anonimna ako je omogućite), nizovi postaju rezine, a rezina objekata ponovno koristi jednu strukturu kada je svaki element istog oblika.
Što se događa ako objekti niza nemaju sva ista polja?
S "Spoji oblike elemenata polja" omogućeno (zadano), alat kombinira svako polje koje je vidio u elementima u jednu strukturu, označavajući polja koja su nedostajala u nekim elementima kao opcionalna. Onemogućite ga i alat se vraća na dinamički tip elementa.
Mogu li kontrolirati kako se denominiraju JSON oznake?
Da, s opcijom oblika JSON oznake: zadržite originalni ključ točno kako se pojavljuje u primjeru, ili pretvorite svaki ključ u snake_case ili camelCase.
Koji tip dobivam za polje koje alat ne može izvesti?
interface{}, alias any ili json.RawMessage, ovisno o opciji koju odaberete — RawMessage je koristan kada želite sami dekodirati to polje kasnije.
Učitava se moj JSON negdje?
Ne. Generiranje strukture se izvršava potpuno u vašem pregledniku — JSON koji zalijepite nikada ne napušta vaš uređaj.