2012-01-16 7 views
2

私のHttpRequestで作成されたXMLを見たいのですが、どうやって見ることができません。私は実行時に要求を見てみましたが、運はありません。HttpRequestでSOAPエンベロープを傍受する

私は私のプロジェクトのサービス参照を経由して、サードパーティのAPIへの呼び出しを作ってるんだ(それは2.0で始まるあまり重要ではないことをここだけでコンテキスト用).NET 4.0プロジェクト

で働いています:

SomeResponseType response = _apiClient.AddUser(userToAdd); 

それでは、どのように私は一緒に置くための最も簡単なものではありませんインターセプトフィルタを作成するための痛みを経由せずには、AddUserがホストに送信される生のXMLの観点から作成されたものをキャプチャしていますか?

答えて

1

マシン上でFiddlerを使用して、基本となるHTTP要求を取得できるはずです。

また、WCFを使用している場合は、設定ファイルを使用してトレースを有効にすることができます。このルートに進むにはConfiguring Message Loggingを参照してください。その後、Service Trace Viewer Tool (SvcTraceViewer.exe)を使ってログをきれいに印刷することができます。

+0

私は単にサービスを参照するためにWCFを使用していません。普通の古いWebサービスです... – PositiveGuy

+0

申し訳ありませんが、次にFiddlerに行ってください。これは単体テストのコンテキスト内である必要はありません。サードパーティのAPIがHTTPリクエストを行っている場合は、それが表示されます(ローカルリクエストを行っている場合は、Fiddlerでそれを確認するための追加ステップがあります)。 – wsanville

+0

私はFiddlerを開かせてください。私は、要求を送信しているC#プロキシクライアントからの要求にFiddlerがどのようにアタッチするかを把握する必要があります。私がコードを実行してデバッグするときに、ストリームを聞くためにフィドラーを配線する方法がわからない... – PositiveGuy

0

Fiddler(www.fiddler2.com)などのネットワークスニッフィングツールを使用できます。単にFiddlerを起動してアプリを起動するだけです。 Fiddlerはワイヤを通るすべてのトラフィックを捕捉し、SOAPサービスから送受信されているXMLを見ることができます。

+0

問題は、私はユニットテストです。これは実行中のWebアプリケーションではありません。 – PositiveGuy

+0

私はアプリを実行していません。私はC#ラッパープロジェクトで単体テストと単体テストによるデバッグを介してコードを実行しています。だから、私はNUnitを介してデバッグすることによってリクエストを送信するコードを打っています。 – PositiveGuy

+0

それは問題ではありません。 NUnitがワイヤを通じてトラフィックを送信している単体テストを開始している限り、Fiddlerはトラフィックを検出し、送受信されているXMLペイロードを見ることができます。 –

関連する問題