依赖google的text_format和json_format包实现string和message互转、 dict和message互转
message = text_format.Parse(text, message_obj)
message_string = text_format.MessageToString(message)
message_dict = json_format.MessageToDict(message)
message = json_format.ParseDict(dict_obj, message_obj)
问题:
MessageToDict 可能会出现base64的结果,看源码发现是对bytes会转成base64, 修改成str类型就好了,改成str(value, encoding("utf-8"))解决了https://chromium.googlesource.com/external/github.com/google/protobuf/+/HEAD/python/google/protobuf/json_format.py#289