У меня есть определение сообщения как
message ID {
string value = 1;
}
message User {
ID id = 1;
google.protobuf.StringValue name = 2;
}
Теперь, если я сериализую экземпляр User в json, я получу что-то вроде этого
{
"id": {
"value" : "myid"
}
"name" : "Josh"
}
Как вы можете видеть для типов WKT, значение не указано. Однако для моего пользовательского типа сообщения Пользователь значение является вложенным. Как мне сделать вывод похожим на
{
"id": "myid"
"name" : "Josh"
}
Я имею в виду, как сериализовать, десериализовать в пользовательский тип.
Один вариант, о котором я могу подумать, это обновить эту функцию https://github.com/protocolbuffers/protobuf/blob/master/python/google/protobuf/json_format.py#L199
Это значит, иметь копию json_format.py и расширить _IsWrapperMessage для моих пользовательских типов