開発者が Java の ThreadLocal を介してメッセージを「追加」できるレガシー アプリケーションがあります。
現在の SOAP エンドポイントは、これらのメッセージをスレッドからすくい取り、応答にパッケージ化します。
また、エンドポイントはすべての例外をキャッチし、同じメカニズムを介してそれらの例外をマーシャリングして、メッセージの受け渡しを正規化します (情報、警告、エラーのいずれであっても)。
これらのメッセージはリッチ オブジェクトです (コード、重大度、分類、そして実際のメッセージ テキストがあります)。
ユーザー (または呼び出し元のサービス) に意味のあるメッセージを伝える標準的な方法があるため、これは多くの点で優れていますが、クライアントが応答からメッセージを選択し、さらに選択する必要があるため、API の使用がより困難になります。実際のペイロード。
どの Web サービスもこの方法でメッセージをやり取りできますが、できるのはほんの一握りです。
アプリケーションを REST API に移行したいと考えていますが、メッセージングを処理する最善の方法に苦労しています。各 REST 応答にエンベロープを追加することにはあまり熱心ではありません。これは実際に API を汚染するからです。
別の方法として、これらのメッセージをカスタム HTTP ヘッダーに追加しているようです。これは「好ましい」アプローチですか?これらのメッセージの 1 つ以上のリストがあり、それらを json としてシリアル化する必要があることを覚えておいてください。
ありがとう。