为什么 protobuf/python 对 MessageToDict 函数中的字节字段进行 base64 编码
Why protobuf/python do base64 encode for bytes field in MessageToDict function
当我使用 json_format.MessageToDict
将 protobuf 消息转换为 python 字典时。 bytes 类型字段将成为 base64 编码。
但是为什么 protobuf 会那样做呢?
json 不能以字节为单位保存数据。为了将字节放入 json,您需要对字节进行编码。 base64 是一种常用的方法。
顾名思义,json_format.MessageToDict
,它将字节转换为 base64 编码的字符串给你。
类似问题here
当我使用 json_format.MessageToDict
将 protobuf 消息转换为 python 字典时。 bytes 类型字段将成为 base64 编码。
但是为什么 protobuf 会那样做呢?
json 不能以字节为单位保存数据。为了将字节放入 json,您需要对字节进行编码。 base64 是一种常用的方法。
顾名思义,json_format.MessageToDict
,它将字节转换为 base64 编码的字符串给你。
类似问题here