jsonオブジェクトがペイロードに含まれているため、content type application/jsonのキューに応答を生成します。 (RabbitMQのに基づいて)私の春ストリームは、常に以下のヘッダ(ペイロードが正しいとJSON形式を持っている)とのメッセージを生成する理由spring-streamは "application/json"の代わりに "text/plain" content-typeを持つメッセージを送信します
しかし...
は知ってはいけません。
(view from rabbit ui)
properties:
delivery_mode: 2
headers:
contentType: text/plain
originalContentType: application/json;charset=UTF-8
content_type: text/plain
のでCONTENT_TYPEではなくアプリケーション/ JSONのtext/plainのに等しい;のcharset = UTF-8。
私のような構成でコンテンツタイプを設定しようとしています
spring:
cloud:
stream:
default:
content-type: application/json
bindings:
my-channel:
content-type: application/json
destination: my-channel-rs
producer:
exchange-type: direct
max-length: 1000
が、助けにはなりませんでした。
私は、正しい応答では、単一のヘッダーのコンテンツタイプが値 "application/json"で存在する必要があるという感覚を持っています。
しかし、多分私は間違っていますか?誰も上記の行動を説明することができますか?
'originalContentType:application/json; charset = UTF-8' - ウサギバインダーは、任意のrabbitmqアプリケーションとの通信を意図していません。その目的のために 'ウサギ'シンクを使用してください。 –
1.はい、私の消費者がs-c-streamを基盤としていない最初のケースです:)それは全く別の技術であり、他人が開発したものです。 2. spring-cloud-streamのバージョンは 'Chelsea.SR2'(' spring cloud dependencies = Dalston.SR4')です。 3. 2.0.0.M3にアップグレードしますか? アプリケーションは本番環境で動作します。私はむしろスプリングクラウドが付いたスプリングブート2の公式リリースを待っています。 –
@GaryRussellあなたは、春 - 雲流に基づいていない消費者のためのメッセージのプロデューサーとして春 - 雲 - 流れを使用することはできないと言いますか? 「うさぎのシンク」はどういう意味ですか? –