@KafkaListener处理Spring Cloud添加的标头

时间:2018-10-10 17:14:46

标签: kafka-consumer-api spring-cloud-stream spring-kafka

我已经通过Spring Boot实现了一个Kafka简单主题使用者,并且我想使用@KafkaListener注释来获取消息。到目前为止,我对我拥有的Kafka方法感到满意。 我现在遇到的问题是,我认为正在由第三方发送给该主题的内容是由云流绑定产生的,并且具有以下标头: �contentType“ text / plain” originalContentType“ application / json; charset = UTF-8”

消息前面。我在这里想要实现的是,我想将有效负载提取为字符串,而没有我不需要的所有额外标头。

有没有一种方法可以保持@KafkaListener方法?如何正确处理标题?

谢谢

Stefano。

1 个答案:

答案 0 :(得分:0)

我认为重点是embeddedHeaders的{​​{1}}:https://docs.spring.io/spring-cloud-stream/docs/Elmhurst.SR1/reference/htmlsingle/#_producer_properties。我想知道是否可以升级到最新的Spring Cloud Stream以依靠Apache Kafka中的内置标头功能。我的意思是在Spring Cloud Stream生产者方面。或者考虑禁用在其中嵌入标头。另一种选择是在消费者端使用headerMode而不是@StreamListener