Maison > développement back-end > Golang > Comment puis-je renommer les noms de champs JSON pour les extensions Protobuf ?

Comment puis-je renommer les noms de champs JSON pour les extensions Protobuf ?

Patricia Arquette
Libérer: 2024-11-26 13:14:18
original
821 Les gens l'ont consulté

How Can I Rename JSON Field Names for Protobuf Extensions?

Renommer les noms de champs JSON pour les extensions Protobuf

De nombreux développeurs rencontrent l'inconvénient d'avoir des noms de champs JSON pour les extensions Protobuf préfixés par "[message. nom_message_extension]". Pour résoudre ce problème, le comportement par défaut du module protobuf/jsonpb consistant à définir le JSONName avec un préfixe peut être contourné à l'aide de l'option de champ json_name.

Dans le guide du langage Protobuf, il est indiqué que les noms de champs pour les messages sont mappés à lowerCamelCase et deviennent des clés d'objet JSON. Cependant, spécifier l'option de champ json_name permet aux développeurs de remplacer ce comportement par défaut et d'utiliser un nom de clé personnalisé.

Par exemple, le message Protobuf suivant :

message TestMessage {
    string myField = 1 [json_name="my_special_field_name"];
}
Copier après la connexion

entraînera le champ myField à portent le nom my_special_field_name lorsqu'ils sont marshalés vers JSON. Cela remplace efficacement le comportement par défaut consistant à préfixer le nom du message d'extension.

Grâce à cette méthode, les développeurs peuvent personnaliser les noms de champs JSON pour les extensions Protobuf, éliminant ainsi les préfixes inutiles et améliorant la clarté et la cohérence de leurs représentations JSON.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal