# 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
1条答案
按热度按时间fjaof16o1#
您可以参考springcloudstream团队的示例(sink和source项目)
要让应用程序运行,有三种方案。
如果消费者和生产者是springcloudstream(scs)应用程序,您只需设置
content-type
作为application/json
.第二种情况是,生产者不是scs,消费者是scs,默认情况下,scs添加嵌入到负载中的头,因此需要禁用该行为
headerMode
作为raw
以及contentType
.在第三个场景中是scs生产者而不是scs消费者,在这种情况下,您需要使用
application/octet-stream
作为一个contentType
因为scs不支持字符串的原始头(这有一个问题),所以您需要以字节的形式发送负载