使用messagepack反序列化来自kafka的字节消息

8mmmxcuj  于 2021-06-04  发布在  Kafka
关注(0)|答案(0)|浏览(480)

我在尝试反序列化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 . 有什么建议吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题