Maison >développement back-end >Golang >Comment désorganiser les entiers codés en chaîne dans Go ?
Désagrégation des entiers codés en chaîne dans Go
Lorsque vous tentez de désorganiser JSON avec des valeurs de chaîne dans un champ entier, vous pouvez rencontrer l'erreur : "json : impossible de transformer la chaîne en valeur Go de type int64." En effet, le démarshaling JSON suppose par défaut que les types numériques, tels que int64, doivent contenir des caractères numériques.
Problème :
Une structure Go définissant un champ int64 reçoit du JSON avec le correspondant champ codé sous forme de chaîne. Cette inadéquation dans les types de données entraîne l'échec du processus de démarshalage.
Solution :
La solution recommandée consiste à utiliser la balise ",string" dans la balise struct json pour le champ entier. . Cela demande au processus de démarshalage d'accepter les valeurs de type chaîne :
type tySurvey struct { Id int64 `json:"id,string,omitempty"` Name string `json:"name,omitempty"` }
Implémentation :
Avec la structure modifiée, les données JSON avec un champ d'identification encodé sous forme de chaîne peuvent désormais être désorganisé avec succès dans un objet Go de type tySurvey.
Remarque :
Il est important de se rappeler que spécifier omitempty dans la balise ne permettra pas de décoder la chaîne vide. omitempty est utilisé exclusivement à des fins de codage.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!