Message Forward ツールを Message Responder ツールにアタッチすることで、メッセージを別のエンドポイント (実際のリソース、内部プロキシ、仮想アセットなど) に転送することができます。エンド ポイントから返される応答は、メッセージ レスポンダーから返された応答として使用されます。
このセクションの内容:
Message Forward ツールは、メッセージ レスポンダー ツールの出力として追加できます。これにより、着信リクエストがメッセージ レスポンダーによって処理されない場合は Message Forward ツールが別のエンドポイントへリクエストを転送します。
たとえば、以下は仮想化したサービスの例です。
Message Forward ツールは、複数レスポンス ビューまたはデータソース応答条件 (両方ではない) を使用するように構成されたメッセージ レスポンダーで使用できます。
複数レスポンス ビューまたはデータソース応答条件の両方を使用しているメッセージ レスポンダーに対して Message Forward ツールを連結しないでください。
レスポンダー スイート内のすべてのメッセージ レスポンダーが失敗した (応答条件に一致しなかった) 時に、 Message Forward ツールを使用して別のエンドポイントにメッセージをルーティングする場合は、仮想化したメッセージをレスポンスするレスポンダーに加え、最後のレスポンダーにはメッセージを転送 (キャッチオールとして機能) するように適切にレスポンダスイートをセットアップします。
Message Forward ツールを追加するには、次の操作を行います。
127.0.0.1
、または特別なホスト名 host.virt.internal
を入力します。localhost または 127.0.0.1
を使用する場合、指定のポートは Virtualize がデプロイされているポートと一致する必要があります。host.virt.internal
を使用する場合、指定のポートは使用されません。たとえば、http://localhost:9080/myVirtualAsset
にデプロイされた仮想アセットには、http://host.virt.internal/myVirtualAsset
を使用してアクセスすることもできます。これらのフォワード パスは、HTTP メッセージ プロキシ フォワード パスと同じロジックを使って作成されます。 「メッセージ プロキシの設定」を参照してください。
|
メッセージ プロキシあるいは Message Forward ツールが誤って A> B> C> A のように転送サイクルを設定した場合、これは無限ループを引き起こします。無限ループを防止するために、Virtualize は 10 回のホップの後に停止するよう設定されています。この値は、システム プロパティ parasoft.proxy.loop.max.limit を設定することで変更できます (たとえば parasoft.proxy.loop.max.limit=5)。
なお、このループの検出は内部経由の転送にのみ適用されます (たとえば、ローカル ホストへのルーティングには適用されますが、ホスト名へのルーティングには適用されません)。