Command Palette

Search for a command to run...

JS

JSON per andare a strutturare

Converti JSON in definizioni di struttura Go con tag json Gli oggetti nidificati diventano strutture in linea, gli array di oggetti vengono uniti e i nomi dei campi seguono le convenzioni Go Esegue lato client.

Che cosa è un convertitore struttura JSON to Go?

Un convertitore di struttura da JSON a Go trasforma un documento JSON nelle dichiarazioni di tipo Go che lo descrivono, in modo da poter demarshalizzare gli stessi dati con encoding/json invece di digitare la struttura a mano Ogni oggetto JSON diventa una struttura Go, ogni campo porta un tag json: "key" che lo mappa nuovamente al nome originale, e i tipi scalari sono dedotti dai valori: una stringa JSON diventa stringa, un numero intero diventa int, un decimale diventa float64, true e false diventano bool, e null diventa interfaccia{} Incolla un payload e ottieni un blocco di tipo pronto per la compilazione indietro.

Esiste perché scrivere le strutture Go da una risposta API reale è noioso e facile da sbagliare sottilmente I nomi dei campi devono essere esportati e seguire le convenzioni Go, quindi id diventa ID e user_url diventa UserURL, mentre il tag json deve preservare l'esatta chiave originale o json.Unmarshal salta silenziosamente il campo Gli oggetti nidificati hanno bisogno di una propria struttura e una matrice di oggetti ha bisogno di una singola struttura che copra ogni chiave di qualsiasi elemento Fare in modo che attraverso una risposta profondamente annidata sia dove gli errori si insinuano Il convertitore applica queste regole in modo coerente: gli oggetti nidificati diventano strutture in linea e le matrici di oggetti vengono unite in modo che una chiave che appare solo in alcuni elementi sia ancora presente nel tipo generato.

Tutto viene eseguito nel browser Il JSON che incolli viene analizzato e analizzato in JavaScript sul tuo dispositivo, quindi non viene caricato, registrato o archiviato nulla e lo strumento continua a funzionare con la rete disconnessa una volta caricata la pagina Ciò è importante quando il payload è una risposta API privata o contiene chiavi e valori che preferiresti non inviare da nessuna parte Puoi rinominare il tipo root, passare i numeri interi a int64 quando hai bisogno del tipo più ampio e aggiungere omissione a ogni tag quando desideri che i valori zero vengano omessi dall'output codificato.

Un breve esempio mostra il go JSON per struct mapping Incolla {"order_id": 1042, "total": 19.5, "items": [{"sku": "A1", "qty": 2}, {"sku": "B2", "qty": 1, "gift_note": "Buon compleanno"}]}, digita ordine come tipo Root e fai clic su Converti Ottieni tipo Order struct con OrderID int, Total float64 e Items []struct che tiene stringa Sku, Qty int e stringa GiftNote. GiftNote è presente anche se solo il secondo elemento lo ha, perché il convertitore struct JSON to Go unisce ogni elemento dell'array in un unico tipo.

Come utilizzare il convertitore struct JSON to Go?

  1. Incolla il tuo JSON

    Incolla un oggetto o un array JSON nella casella di input Carica prima il campione se vuoi vedere la forma della struttura generata prima di utilizzare i tuoi dati.

  2. Assegna un nome al tipo di radice

    Inserisci un nome per la struttura di primo livello, ad esempio Utente o ApiResponse Viene ripulito in un identificatore Go esportato valido in modo che venga compilato come scritto.

  3. Imposta le opzioni di numeri interi e tag

    Scegli int o int64 per i numeri interi e attiva omitempty se desideri che i campi vuoti vengano esclusi quando la struttura viene codificata nuovamente in JSON.

  4. Convertire e copiare

    Fare clic su Converti per creare le definizioni struct, quindi copiarle nel file Go JSON non valido viene segnalato con il messaggio del parser esatto in modo da poterlo correggere.

Caratteristiche principali

  • Correggere i tag json

    Ogni campo mantiene un tag json: "original_key" in modo che json.Unmarshal mappi i dati al nome JSON esatto, anche quando il campo Go viene rinominato per seguire le convenzioni.

  • Nomi dei campi Go-Convention

    Le chiavi vengono esportate e le inizializzazioni comuni vengono sovradimensionate, quindi id diventa ID, user_url diventa UserURL e html_body diventa HTMLBody, corrispondendo alle aspettative di golint.

  • Strutture nidificate in linea

    Gli oggetti JSON nidificati diventano letterali strutturali in linea a qualsiasi profondità, quindi l'intera forma vive in un'unica dichiarazione che puoi incollare come un singolo blocco.

  • Array uniti di oggetti

    Una serie di oggetti produce una struttura che copre ogni chiave posseduta da qualsiasi elemento e i tipi di valore in conflitto per una chiave ricadono nell'interfaccia {} anziché fallire.

Frequently Asked Questions

Un convertitore di struttura da JSON a Go trasforma un documento JSON nelle dichiarazioni di tipo Go che lo descrivono Ogni oggetto diventa una struttura, ogni campo ottiene un tag json: "key", e i tipi di valore sono dedotti, in modo da poter deselezionare gli stessi dati con encoding/json senza scrivere la struttura a mano.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

json to gojson to go structgo json to structjson to golang structgo struct generatorjson to structconvert json to gogolang struct from jsonfree json to gono signup json to go