我正在使用 Python protobuf 包版本
5.38.3
来反序列化一些数据包,我需要检查我反序列化的消息是否符合特定的 protobuf 消息结构。对于某些检查,我想获取未知字段的列表。
这篇文章指向消息支持的API
UnknownFields()
,但是当我在反序列化消息中调用它时,它会引发NotImplementedError
。
protobuf 5.28.3
中的反序列化消息访问未知字段列表?
如何访问未知字段列表
在这里,让我帮你谷歌一下。
https://protobuf.dev/news/2023-08-15
Python 重大变化
在 v25 中,
在纯 Python 和 C++ 扩展中将被弃用。它将在 v26 中被删除。使用unknown_fields.py中新的message.UnknownFields()
支持作为替代。UnknownFieldSet(message)
您将需要更新您的代码以使用新的 公共API。