Konwerter JSON in Go
Konwertuj JSON in struct Go per lo sviluppo Go
Input JSON
Output Go
Cos'è JSON in Go?
Go usa le struct per i dane strutturati. Quando fai l'unmarshal di JSON con encoding/json, hai bisogno di struct con campi e tipi corrispondenti. La specifica JSON definisce oggetti, array, stringhe, numeri e booleani—ma Go richiede definizioni di struct esplicite per ogni oggetto annidato.
Questo narzedzie genera struct Go dal tuo JSON. Imposta il nome della struct e il pacchetto nel pannello di configurazione. Abilita i tag JSON per json:"field_name" in modo che i campi della struct si mappino correttamente alle chiavi camelCase o snake_case. Abilita i puntatori per i campi opzionali o nullable.
La conversione viene eseguita interamente nel tuo browser. Il tuo JSON non viene mai inviato a un server.
Come usare questo narzedzie
Incolla o carica JSON
Kopiuj il tuo JSON e incollalo nell'editor sinistro. Puoi anche fare clic su Wczytaj per caricare un plik .json o .txt. Usa il pulsante Przyklad per caricare dane di esempio. Imposta il nome della struct e il nome del pacchetto nel pannello di configurazione.
Rivedi le struct generate
Il pannello di destra mostra le struct Go generate. Gli oggetti annidati diventano struct annidate o separate. Gli array diventano <code>[]Type</code>. I tag JSON mappano i campi della struct alle chiavi JSON. Se il tuo JSON ha sintassi non valida, correggila prima usando il Formater JSON o il Walidator JSON.
Kopiuj o scarica
Usa <strong>Kopiuj</strong> per mettere il risultato negli appunti, o <strong>Pobierz</strong> per salvarlo come plik <code>.go</code>. Incollalo nel tuo progetto Go.
Esempi JSON in Go
Ecco un esempio di generazione di struct Go da un oggetto JSON.
Przyklad: Record abbonato
Input JSON:
Output Go generato:
Quando JSON in Go è utile
La maggior parte degli sviluppatori ne ha bisogno quando integra API. Invii una richiesta tramite Postman o curl, e la risposta arriva come JSON. Incollarla qui ti dà struct tipizzate da usare immediatamente con encoding/json.
I plik di configurazione sono un altro caso comune. Un <code>config.json</code> o <code>settings.json</code> con oggetti annidati spesso richiede una struct Go per l'accesso type-safe. Se devi prima unire due plik JSON, usa lo narzedzie separato JSON Merge.
Le esportazioni di database da MongoDB, Firestore o CouchDB sono tipicamente grandi blob JSON. Elaborarli qui ti aiuta a capire la struttura del documento e generare struct Go per script di importazione o query.
czesto zadawane pytania
Dlaczego tagi JSON?
Nazwy pól struktur Go muszą być eksportowane (z wielkiej litery) dla JSON. JSON często używa camelCase lub snake_case. Tag json:"fieldName" mapuje pole struktury na klucz JSON. Włącz tagi JSON w konfiguracji, aby wygenerowane struktury działały poprawnie z json.Unmarshal i json.Marshal.
Wskaźniki dla opcjonalnych pól?
Jeśli pole JSON może być null lub brakujące, użyj *Type, aby rozróżnić między wartością zerową a brakiem. Bez wskaźników nie można tego odróżnić. Włącz Użyj wskaźników w konfiguracji dla pól opcjonalnych lub nullable.
Czy moje dane są gdzieś wysyłane?
Nie. Generowanie działa całkowicie w Twojej przeglądarce przy użyciu JavaScript. Żadne dane nie są wysyłane do żadnego serwera.
Co z omitempty?
Dodaj omitempty do tagu JSON dla pól, których nie chcesz w wynikach gdy są puste: json:"name,omitempty". Edytuj wyniki w razie potrzeby.
Interface{} dla dynamicznego JSON?
Dla nieznanej lub bardzo zmiennej struktury użyj map[string]interface{} lub interface{}. To narzędzie generuje typowane struktury dla znanych kształtów.
powiazane narzedzia
Per la gestione JSON di Go, vedi encoding/json. Per JSON, vedi la specifica JSON e RFC 8259. Per i test API, vedi Postman.