発信Httpリクエストをインターセプトし、結果を古いシステムに返すC#アプリケーションを開発しようとしています。廃止されたWebサービスにHttpリクエストを送信するレガシーシステムがあります。送信リクエストをインターセプトして、新しいWebサービスに送信する必要があります。応答が戻ってきたら、それを操作してレガシーシステムに送信する必要があります。すべてのコードはクライアントマシンに配置する必要があります。httpリスナーに沿った何かがうまくいくと思いましたが、それでどこにも行き着きません。どんな提案でも大歓迎です。
5 に答える
皆さんの提案に感謝します、ここに答えがあります。
Eric LawrenceのFiddler2を使用して、プロキシとして機能しました。次に、興味のある特定のHttpリクエストをインターセプトするFiddler拡張機能を作成しました。
これがWindowsサーバーで実行されている場合は、「hosts」ファイルを編集して、必要に応じて同じホスト(localhost)を含む他のサーバーに要求をリダイレクトできます。そこで、リクエストとレスポンスを翻訳する中間Webサービスを利用できます。
レガシーシステムはhttpプロキシの仕様をサポートしていますか?もしそうなら、それはおそらくあなたがやりたいことです-プロキシとして機能する何かを書いて、それを古いシステムに向けてください。
Davが示唆するように、レガシーシステムがプロキシを使用できる場合は、 Foxyなどを使用してリダイレクトを実行できる可能性があります。よくわかりませんが、一部のソフトウェアはHTTPトランスポートにIEを使用していると思いますので、クライアントマシンのIEでHTTPプロキシを設定してみてください。
そうでなければ、これは難しい問題だと思います。基本的に、TCP / IPトラフィックを傍受して変更しようとしているのですが、高度なファイアウォールまたはルーターでのみ可能だと思います。
tcpmonは、TCP接続を流れるデータを監視するためのオープンソースユーティリティです。tcpmonは、クライアントとサーバーの間に配置することで使用されます。クライアントはtcpmonに接続するように作成され、tcpmonはデータをサーバーに転送します-GUIに表示します。 https://tcpmon.dev.java.net/