如何从 Kafka RecordHeaders 获取键和值

run*_*aul 3 java apache-kafka

我有一个ProducerRecord对象。

ProducerRecord<String, byte[]> hdr = addHeader.addMDGHeader(record);
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写一个测试来检查特定标头键是否存在。

如果我打印hdr.headers().toString()我会得到以下内容RecordHeaders(headers = [RecordHeader(key = mdpHeader, value = [123, 34, 83, 101, 113, 117, 101, 110, 99, 101, 78, 111, 34, 58, 48, 44, 34, 84, 101, 109, 112, 108, 97, 116, 101, 115, 34, 58, 91, 93, 125])], isReadOnly = false)

我该如何拔出mdpHeader

Dea*_*ool 6

Header.value ()方法返回字节数组byte[],然后您可以将其转换为字符串,您可以在此处查看更多示例

String value = new String(header.value(), StandardCharsets.UTF_8);
Run Code Online (Sandbox Code Playgroud)