-1
A
回答
4
您可以參考examples from spring-cloud-stream team(沉&源項目)
爲了讓應用程序運行有三種情況。
如果消費者和生產者都是彈簧雲流(SCS)的應用程序,你只需要設置content-type
爲application/json
。
#Specific channel
spring.cloud.stream.bindings.<channelName>.consumer.contentType=application/json
#For all channels
spring.cloud.stream.default.contentType=application/json
第二種情況是你的製片人是不是SCS和你的消費者是一個SCS,SCS默認添加嵌入在淨荷頭,所以你需要禁用該行爲將headerMode
爲raw
連同contentType
。
#Specific channel
spring.cloud.stream.bindings.<channelName>.consumer.headerMode=raw
#For all channels
spring.cloud.stream.default.consumer.headerMode=raw
在第三種情形是SCS生產商,而不是SCS消費者,在這種情況下,你需要使用application/octet-stream
作爲contentType
因爲SCS不支持原標題爲字符串(there is a issue for that),所以你需要發送有效負載作爲字節
#Properties
spring.cloud.stream.default.contentType=application/octet-stream
spring.cloud.stream.default.producer.headerMode=raw
//Java
byte[] payload = jacksonObjectMapper.writeValueAsBytes(entity);
return channel.send(MessageBuilder.withPayload(payload).build());
相關問題
- 1. 使用KAFKA REST API消費JSON消息
- 2. spring-kafka(未集成)消費者不消費消息
- 3. 手動確認消息:春雲流Kafka
- 4. 非Spring雲流(SCS)生產者發送JSON消息給SCS消費者
- 5. 有沒有一種方法可以獲得在kafka流中消費的每條消息的偏移量?
- 6. 從kafka消費消息時的異常
- 7. 消費者的有效MQ消息一個消息
- 8. 多位消費者使用spring kafka
- 9. Spring雲流消息JSON轉換不起作用
- 10. 從ruby消費REST,是否有一個很好的寶石?
- 11. Spring雲流Kafka - 最終一致性 - Kafka自動重試未確認的消息(使用autocommitoffset = false時)
- 12. 使用spring雲流向錯誤通道發送錯誤消息
- 13. 消費者在Apache Kafka中使用消息的延遲
- 14. 一個很好的方式,讓我的所有消息在Java
- 15. Golang Kafka沒有消耗所有消息偏移西南
- 16. PHP消費JSON流
- 17. 只消費Kafka Queue的第一條消息?
- 18. Kafka和Docker:將Kafka消息推送給另一個Docker消費者
- 19. 如何在多個消費者閱讀相同的kafka消息
- 20. Spring Cloud Streams沒有在消息中設置kafka密鑰?
- 21. 有沒有一個很好的SimpleSAMLphp SLO例子?
- 22. Kafka - 用於處理消費者無法處理消息的模式
- 23. kafka生產者/消費者重新啓動後,消費者沒有收到消息
- 24. 在卡夫卡消費活的消息
- 25. 在Spring雲數據流中激活Avro消息轉換器
- 26. 春季雲SQS消費阻塞,直到所有消息處理
- 27. Glassfish 3.1 ActiveMQ和通用消費消息
- 28. 無法讀取一條消息與基於java的Kafka消費者
- 29. 有沒有angular.identity()用例的好例子?
- 30. 使用concurrent.futures一次消費很多出隊消息
即使這是downvoted並標記爲脫離主題,答案解決了我的問題。我討厭這個社區總是專注於關閉和減少不重要的問題,因爲他們是這樣的強硬的堆棧溢出成員。 stackoverflow的要點是幫助程序員和這個答案幫助我解決了一個問題,我試圖解決5個小時左右...... – Maxincredible52