Sobes.tech
Junior — Middle

Comment indiquer dans gRPC qu'un champ particulier n'est pas destiné à être utilisé par le client?

sobes.tech IA

Réponse de l'IA

Dans gRPC, pour indiquer qu’un champ particulier n’est pas destiné à être utilisé par le client, vous pouvez utiliser l’option [(google.api.field_behavior) = OUTPUT_ONLY] dans la description du message protobuf. Cela sert d’indication que le champ est rempli par le serveur et ne doit pas être défini par le client.

Exemple en protobuf:

import "google/api/field_behavior.proto";

message User {
  string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
  string name = 2;
}

Dans le code Go, cela n’impose pas de restrictions au niveau de la compilation, mais sert de documentation et peut être pris en compte par des outils de génération de code ou de validation.

Si vous n’utilisez pas d’options spéciales, les accords sur qui doit définir le champ sont maintenus au niveau du protocole et de la documentation.