jsonecho

JSON vers Go

Collez un exemple JSON et obtenez des types Go pour lui.

Chargement de l'outil...

Comment utiliser JSON vers Go

  1. Collez un exemple JSON représentatif, idéalement un avec tous les champs optionnels remplis.
  2. Définissez le nom du type racine, et décidez si vous voulez aussi du code auxiliaire ou uniquement les types.
  3. Copiez le code Go généré dans votre projet.

À propos de JSON vers Go

Écrire des classes de modèle à la main pour une grosse charge utile JSON est fastidieux, et c'est là que les fautes de frappe s'installent. Collez un exemple ici et le générateur déduit la structure : quels champs existent, lesquels sont des objets, lesquels sont des tableaux et quel type a chaque valeur. La sortie est des structs avec balises json, plus des fonctions helpers Unmarshal et Marshal.

Les noms sont exportés en PascalCase et les acronymes comme ID et URL sont gardés en majuscules, ce que les linters attendent. Tout s'exécute dans votre navigateur, donc vos données d'exemple restent sur votre machine.

Utiliser le code généré

Appelez UnmarshalRoot(data), ou utilisez json.Unmarshal(data, &root) si vous n'avez copié que les types.

Les champs optionnels sont des pointeurs avec la balise omitempty, donc les valeurs manquantes et zéro peuvent être distinguées.

Questions fréquentes

De quoi dépend le code Go généré ?

La sortie est des structs avec balises json, plus des fonctions helpers Unmarshal et Marshal.

Comment analyser du JSON avec le résultat ?

Appelez UnmarshalRoot(data), ou utilisez json.Unmarshal(data, &root) si vous n'avez copié que les types.

Comment les champs optionnels et manquants sont-ils gérés ?

Les champs optionnels sont des pointeurs avec la balise omitempty, donc les valeurs manquantes et zéro peuvent être distinguées.

Le générateur regarde-t-il plus d'un enregistrement ?

Il ne connaît que ce qui est dans votre exemple. Si un champ manque dans votre exemple, il n'apparaîtra pas dans les types, et si une valeur est null dans votre exemple, son type est inconnu. Collez un exemple dans lequel autant de champs que possible sont remplis, ou collez un tableau avec plusieurs enregistrements différents.

Mon JSON est-il envoyé à un serveur ?

Non. Le générateur est téléchargé dans votre navigateur la première fois que vous l'utilisez, environ 1 Mo, et tout s'exécute localement.

Plus dans Données vers classe

Tous les outils →