我有一些 Protocol Buffer 消息对象。所以我想以这种方式序列化它:
import json
from google.protobuf.json_format import MessageToJson
with open("file.json", 'w') as fjs:
fjs.write(MessageToJson(message_object))
但它改变了对象字段的名称。
例如我有这样的对象:
[{
"id": "333333",
"creation_timestamp": 2011,
}]
MessageToJson将其字段更改为:
[{
"id": "333333",
"creationTimestamp": "2011",
}]
即
creation_timestamp
改为 creationTimestamp
和 2011
已完成 "2011"
.如何避免?
最佳答案
我阅读了源代码,结果发现你可以传递一个选项 preserving_proto_field_name=True
至 MessageToJson
.
关于json - google.protobuf.json_format.MessageToJson 更改字段名称。如何避免?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43835243/