質問

Visual Studioを使用すると、Webサービスの呼び出しが簡単になり、裏で何が起こっているのかを把握するのが難しくなります。

Webサービスを呼び出すときに、.Netアプリから生成された実際のXMLを確認するにはどうすればよいですか?

役に立ちましたか?

他のヒント

MSDNの例SOAPのTraceExtensionを実装するコード。そのまま使用するか、変更して、好きなものにログインできます(DBを使用し、デバッグのためだけでなく、後ですべての通信をアーカイブするために保持しました)。

SOAP Webサービス呼び出しの場合、 SoapUI が非常に役立つことがわかりました。 WSDLに接続してメソッド定義を取得し、スケルトンエンベロープを作成してそれらのメソッドを呼び出すことができます。呼び出し後に本格的な結果を確認できます。

Visual Studioの外部では、Fiddlerツールを使用して、要求と応答に含まれるものを正確に確認できます。

Visual Studioの内部でできることの1つは、DataSetをファイルに書き込むことです。

myDataSet.WriteXml(filename);

Visual Studio内でこれを行う方法の別の例を次に示します。これは、Webサービスからの応答を取得して、指定したファイルに保存するだけです。

Dim url As String = "http://web.service.com/"
Dim request As WebRequest = WebRequest.Create(url)
Dim response As WebResponse = request.GetResponse()
Dim stream As Stream = response.GetResponseStream()

Dim xmlDoc As XmlDocument = New XmlDocument
xmlDoc.Load(stream)
xmlDoc.Save("C:\Temp\foo.xml")

Fiddler を使用するという提案は、ITチームを参加させるのに十分でした。彼らはすでにウェブサーバーにインストールされた同様のプログラム WireShark のコピーを持っていました。

あまりネットワークに精通していないため、最初はPCからWebサービスへのリクエストを監視できると考えていました。それはうまくいきませんでした。 Webサーバーに着信したリクエストを監視すると、httpヘッダーとsoapエンベロープの構造がわかりました。

すべての回答に感謝します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top