我在尝试反序列化Kafka消息时遇到消息包额外数据错误。
我使用kafka的producer控制台向kafka发送了一条测试消息: Test
收到通知后 kafka_message
在我的消费者上,我尝试反序列化:
message = kafka_message.value()
msgpack.unpackb(message, raw=False)
这给了我:
***msgpack.exceptions.ExtraData: unpack(b) received extra data.
如果我检查消息本身,我会得到:
(Pdb) message
b'Test'
(Pdb) codecs.decode(message)
'Test'
(Pdb) type(message)
<class 'bytes'>
(Pdb) msgpack.unpackb(message, raw=False)
***msgpack.exceptions.ExtraData: unpack(b) received extra data.
(Pdb) msgpack.unpackb(message, object_hook=codecs.decode, raw=False)
***msgpack.exceptions.ExtraData: unpack(b) received extra data.
我想使用消息包进行反序列化,而不是切换到 codecs.decode
. 有什么建议吗?
暂无答案!
目前还没有任何答案,快来回答吧!