给定一个这样的原型:
message Request {
uint64 account_id = 1;
message Foo{
uint64 foo_id = 1;
}
repeated Foo foos = 2;
当我添加一个名为bar_id
message Request {
uint64 account_id = 1;
message Foo{
uint64 foo_id = 1;
uint64 bar_id = 2;
}
repeated Foo foos = 2;
我在使用旧的 via 反序列化时遇到错误。错误为 。clientproto.UnmarshalText(msg, request)unknown field name "bar_id" in serviceA.Request_Foo
我知道在proto-3中处理有很多变化,但这不是预期的,因为它似乎违反了向前兼容性(新服务器向旧客户端发送请求)。这是否与使用嵌入式类型有关?在不强制客户端更新的情况下更新服务器的最佳方法是什么?unknown field
慕少森
相关分类