Ich muss eine Nachricht mit einem optionalen Feld in protobuf (proto3-Syntax) angeben. In Bezug auf die Proto 2-Syntax ist die Nachricht, die ich ausdrücken möchte, ungefähr so:
message Foo {
required int32 bar = 1;
optional int32 baz = 2;
}
Nach meinem Verständnis wurde das "optionale" Konzept aus Syntax Proto 3 entfernt (zusammen mit dem erforderlichen Konzept). Obwohl die Alternative nicht klar ist: Wenn Sie den Standardwert verwenden, um anzugeben, dass kein Feld vom Absender angegeben wurde, bleibt eine Mehrdeutigkeit, wenn der Standardwert zur Domäne der gültigen Werte gehört (z. B. ein boolescher Typ).
Wie soll ich die obige Nachricht verschlüsseln? Vielen Dank.