Go til JSON-konverter
Lim inn en Go struct og en composite literal. Få ren JSON tilbake.
Hva dette verktøyet gjør
Du har en Go struct med json:"..."-tags og en composite literal et sted (order := Order{...}), og du trenger JSON-formen som encoding/json ville produsert. Lim begge deler inn i editoren til venstre og trykk Konverter. Verktøyet leser tags, bruker reglene for omitempty og -, håndterer nil-pekere og gir deg JSON som matcher det json.MarshalIndent ville spyttet ut — du slipper å gå via go run.
Det følger den ekte marshalling-semantikken i Go, ikke naiv tekstutskifting. Eksporterte feltnavn blir omdøpt etter første del av json-taggen. omitempty dropper nullverdier (tom streng, 0, false, nil, tom slice/map). En tag - fjerner feltet helt. Embedded (anonyme) struct-felter blir promotert på samme måte som encoding/json gjør det. time.Time kommer ut som en RFC 3339-streng i RFC 8259-kompatibelt format, og byte-slices ([]byte) base64-kodes.
Numeriske typer følger Go-reglene: float64 beholder presisjonen, int/int64 forblir tall, og en nil-peker blir JSON null. Slices blir JSON-arrays; en nil-slice blir også null (ikke []), som matcher default-oppførselen til Marshal. map[string]V blir et JSON-objekt. Lim inn flere structs på én gang — hver instans havner som en top-level-oppføring.
Slik bruker du det
Tre steg. Funker for en liten struct eller en hel <code>types.go</code>-fil.
Lim inn Go-en din (eller prøv eksempelet)
Slipp struct-definisjonene pluss en composite literal (order := Order{...}) inn i editoren til venstre. En enkelt struct, flere structs med embedded felter eller en package-nivå-deklarasjon — alt funker. Klikk på Last inn eksempel for et realistisk startpunkt.
La package-linja og import-blokka stå — parseren ignorerer dem. Struct-tags, method receivers og kommentarer går helt greit. Som referanse: encoding/json.Marshal-doccene lister opp hver regel verktøyet følger. Go-kildekode-repoet er verdt en titt hvis du støter på en edge case.
Trykk Konverter
Klikk på den grønne Konverter-knappen. Verktøyet parser struct-definisjonene, løser composite literal, bruker tag-reglene og produserer innrykket JSON.
Kopier JSON-en
Panelet til høyre fylles med JSON som er klar for en API-request, en testtabell, en config-fil eller en fixture du laster med os.ReadFile.
Når det faktisk hjelper
Request/response-samples for HTTP-handlers
Du har en request- eller response-struct for en <code>net/http</code>- eller <code>gin</code>-handler. Lim den inn med en literal og få en JSON-body du kan sende med curl eller lime inn i Postman.
Fixtures for table-driven tests
Konverter en struct-instans fra en table test til en frittstående JSON-fil for golden-file testing eller ekstern tooling.
Kubernetes CRDs og manifester
Gjør en Go struct som representerer en custom resource eller et controller-payload om til JSON-formen som <code>kubectl apply</code> eller Kubernetes-API-et bruker.
Kafka-, NATS- og gRPC-gateway-meldinger
Serialiser en Go message-struct til JSON for producer-tester, sample-payloads eller dokumentasjon — uten å fyre opp hele pipelinen.
Vanlige spørsmål
Respekterer den json-struct-taggen?
Ja. Første tag-verdi omdøper feltet, omitempty dropper nullverdier, og - ekskluderer feltet helt. Det matcher reglene dokumentert i encoding/json Marshal-referansen.
Hvordan håndteres time.Time og []byte?
time.Time formateres som RFC 3339 (f.eks. "2026-03-14T10:30:00Z"), slik time.Time.MarshalJSON gjør. []byte base64-kodes som JSON-streng — default-oppførselen til standardbiblioteket.
Hva med nil-pekere og nil-slices?
En nil-peker blir JSON null. En nil-slice blir også null (ikke []) — det er Go sin default. Vil du ha en tom array, initialiser slicen med []T{}.
Promoteres felter fra embedded (anonyme) structs?
Ja. Felter i en embedded struct flates ut i det ytre objektet — med mindre den embedded structen har sin egen json-tag. Samme regler som encoding/json bruker.
Kan jeg lime inn en hel fil med flere structs?
Ja. Hver struct-type som har en instans i det du limer inn, havner som sin egen oppføring i JSON-en. Nøstede struct-typer ekspanderes inline der de brukes.
Lagres koden min noe sted?
Koden sendes til backend for å bli konvertert og lagres ikke og logges ikke. Som med alle online-verktøy — kast et blikk på sensitiv kode før du limer den inn.
Andre verktøy du kan trenge
Go til JSON er bare én brikke i puslespillet. Disse spiller godt sammen med det: