Sobes.tech
Junior — Middle

¿Cómo indicar en gRPC que un campo determinado no está destinado a ser utilizado por el cliente?

sobes.tech AI

Respuesta de la IA

En gRPC, para indicar que un campo determinado no está destinado a ser utilizado por el cliente, se puede usar la opción [(google.api.field_behavior) = OUTPUT_ONLY] en la descripción del mensaje protobuf. Esto sirve como una pista de que el campo es llenado por el servidor y no debe ser establecido por el cliente.

Ejemplo en protobuf:

import "google/api/field_behavior.proto";

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

En el código Go, esto no impone restricciones a nivel de compilación, pero sirve como documentación y puede ser considerado por herramientas de generación de código o validación.

Si no se usan opciones especiales, los acuerdos sobre quién debe establecer el campo se mantienen a nivel de protocolo y documentación.