Lim inn Go til venstre og klikk "Konverter" — vi gjør det om til JSONLim inn Go-kode

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.

1

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.

2

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.

3

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: