Google hat unbekannte Felder in Proto3 entfernt. Ich würde gerne die Gründe für diese Entscheidung hören. Wenn jemand das Proto2-Verhalten replizieren kann, würde ich es gerne hören.Wie kann unbekannte Feldfunktionalität in Proto3 repliziert werden?
Wenn es darauf ankommt, schreiben wir unseren Code in Go.
Da proto3 und grpc parallel entwickelt wurden, wollte ich auch die Grpc-Community erreichen.
Quelle: Removal of unknown fields
Es geht nicht darum, wem Sie "erreichen". Sie stellen eine Frage zu Protokollpuffer. GRPC ist eine andere Sache. Sicher, sie sind verwandt, aber deine Frage ist nicht * über * gRPC. – murgatroid99
Sie scheinen nicht viel gesagt zu haben. Vielleicht reinigt es die Oberfläche: gRPC [füllt einfach deine Strukturen] (http://godoc.org/google.golang.org/grpc#Stream), während proto [dir eine Nachricht geben muss, die du weitergeben kannst] (http://godoc.org/github.com/golang/protobuf/proto#Unmarshal) (und Sie müssen es tatsächlich weitergeben, damit Ihre App nicht für das Feld geeignet ist). Sie hätten es vielleicht für sicherer gehalten, Caller und Callees gemeinsam zu aktualisieren, etwa wenn eine Go-Methode einen Parameter hinzufügt, dessen Aufrufer ebenfalls aktualisiert werden müssen. Als Workaround könnten Sie möglicherweise Proto3-Karten für neue Felder verwenden. – twotwotwo
Vielleicht einen bestimmten Anwendungsfall angeben, für den Sie "unbekannte" Felder verwendet haben? – drozzy