問題タブ [enterprise-integration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-camel - Camel の HTTP URL で Bean の変数を使用する方法
私はCamelを初めて使用し、過去数日間しか使用していません.
Bean「retreiveDetails」で何らかの処理を行い、ルートの次のステップでその Bean「retreiveDetails」から変数「idValue」を使用します。これは http URL です。Routebuilder クラスの一部は次のとおりです。
Bean「retreiveDetails」で「idValue」の値を設定するにはどうすればよいですか? そして、Routebuilder のルートでどのように使用するのですか?
java - Apache Camel はすべてのリクエスト ヘッダーをレスポンスにコピーします
いくつかのカスタム ヘッダーを設定し、リバース プロキシとして機能するキャメル ルートがあります。
アプリ サーバーへのリクエストは Web エージェントを介して渡され、Web エージェントはいくつかのヘッダーをリクエストに設定します。これらのヘッダーには、機密情報が含まれています。ただし、キャメル ルートはすべてのリクエスト ヘッダーをレスポンス ヘッダーとしてレスポンスにコピーするように見えます。その結果、Web エージェンによって設定された機密情報がブラウザ エンドで利用可能になります。
ただし、キャメル ルートをスキップすると、応答に Web エージェント ヘッダーがありませんでした。そのため、キャメル/サーブレット コンポーネントがリクエスト ヘッダーをレスポンスにコピーしていると思われます。roue 内のコードからの応答に要求ヘッダーをコピーしていないことに注意してください。これに光を当ててください。
アップデート
camelサーブレットのドキュメントに従って
Camel は、HTTP コンポーネントと同じメッセージ ヘッダーを適用します。Camel はすべての request.parameter と request.headers にも入力します。たとえば、クライアント リクエストの URL が http://myserver/myserver?orderid=123の場合、交換には、値が 123 の orderid という名前のヘッダーが含まれます。
これは、サーブレット コンポーネントがすべての要求ヘッダーを応答にコピーすることを意味しますか? もしそうなら、それを無効にする方法は?
wso2esb - あまり結合せずに、同様の情報を共有する API を「関連付ける」方法は?
それぞれ独自の REST API を持つ 3 つのシステムを統合する必要があります。これらのシステムは、たとえば製品に関する情報を共有する必要があります (説明を簡単にするため)。各システムには、同じ物理製品の独自の表現があり、独自の内部 ID があります。
これらのシステムを ESB (より正確には WSO2 ESB) を使用して「接続」することを計画しています。
別のシステムと通信する場合、メッセージ送信システム (メッセージ交換を開始するシステム) は、対話する必要がある製品を識別するために、理想的にはリモート システムの製品 ID を認識している必要があります。ただし、あるシステムが別のシステムの内部 ID を認識してはならないため、結合が多すぎると感じています。また、将来統合するシステムが増える場合は、システム間で交換されるすべての JSON メッセージを変更し、新しいシステムの製品 ID を各システムのローカル データ ストレージに保存する必要があります。
同様の状況にどのように対処しますか?他のシステムの内部 ID をローカルに保存せずに、相互に通信する必要がある異なるシステムの内部 ID をどのように関連付けますか?
あなたの提案をいただければ幸いです。