JSON naar Go-struct
Zet een JSON-voorbeeld om in Go-structuurdefinities met afgeleid typen en tags.
JSON naar Go-struct
Plak een JSON-voorbeeld en dit hulpmiddel genereert overeenkomstige Go-structuurdefinities met json-tags. Het bepaalt int, float64, string, bool en null voor elk veld, maakt benoemde of ingesloten structuren voor geneste objecten en bepaalt slice-typen voor arrays — inclusief slices van objecten die hun eigen herbruikbare struct hebben.
Opties vormen de gegenereerde code. Noem de root-structuur zelf of laat het hulpmiddel dit afleiden. Kies hoe tags worden geschreven — behoud de originele sleutel of zet deze onafhankelijk van de naam van het originele veld om naar snake_case of camelCase. Schakel "omitempty toevoegen" in om het aan elke tag toe te voegen, en "Pointers voor optionele velden" om velden die ontbreken of null zijn in delen van het voorbeeld met een pointertype te markeren. Wanneer array-objecten iets andere velden hebben, "Array-element vormen samenvoegen" combineert ze in één struct met extra velden als optioneel gemarkeerd, in plaats van het elementtype op te geven. Kies voor waarden die het hulpmiddel niet kan bepalen, interface{}, de alias any of json.RawMessage voor uitgestelde decodering.
Dit is de stap voordat u een API-client of config-loader in Go schrijft: plak een echte reactie of config-voorbeeld en krijg een eerste struct in plaats van handmatig veldnamen en tags in te typen. Geneste structuren kunnen als aparte benoemde typen voor hergebruik elders in het pakket blijven, of inline worden weergegeven wanneer een vorm slechts eenmaal wordt gebruikt. Voor velden waarvan de tag niet meer overeenkomt met de originele JSON-sleutel is een opmerking met de originele sleutel beschikbaar.
Alles wordt lokaal in uw browser uitgevoerd — de JSON die u plakt, die echte API-reacties of interne config kan bevatten, wordt nooit geüpload. Kopieer het resultaat, download het als .txt-bestand of verplaats de uitvoer terug naar de invoer om het voorbeeld te verfijnen en opnieuw te genereren.