我正在调用外部HTTPS Web服务.
为了检查出错了什么,所有者需要我发送的SOAP请求.
我有一个Web引用和由VS 2008生成的生成的代理类...
有没有办法在发送之前查看SOAP消息?
我正在考虑一些.net代码...因为我试过的Sniffer没有"看到"web服务调用不知道为什么.
我已经看到 了几个 关于这个的问题,但没有明确的演练如何捕获到WCF Web服务的SOAP请求.他们只是说"去安装Fiddler2".所有我可以摆脱fiddler的是普通的HTTP请求,但由于某些原因我永远无法获得原始SOAP请求任何人都可以指导我阅读这个特定场景的教程吗?
.NET Web应用程序在WCF Web Service上调用basicHTTP端点.我需要捕获原始SOAP请求.我正在寻找一个完整的演练,因为我不是出于某种原因而想要这个概念.
UPDATE
这是我从Fiddler原始视图中得到的结果:
POST http://vm05/PNSWebTestVB/ HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Referer: http://vm05/PNSWebTestVB/
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: vm05
Content-Length: 2272
Connection: Keep-Alive
Pragma: no-cache
__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKLTM4MDU0OTMyOQ9kFgICAw9kFgICeQ8WAh4HVmlzaWJsZWcWBgIBDw8WAh4EVGV4dAXKATx0YWJsZSB3aWR0aD0nMTAwJSc%2BPHRyPjx0ZD48c3Ryb25nPlN0YXJ0ZWQ6PC9zdHJvbmc%2BIDg6Mjg6MTguNzA3IEFNPC90ZD48dGQgYWxpZ249J2NlbnRlcic%2BPHN0cm9uZz5FbmRlZDo8L3N0cm9uZz4gODoyODoyMC41ODUgQU08L3RkPjx0ZCBhbGlnbj0ncmlnaHQnPjxzdHJvbmc%2BVG90YWw6PC9zdHJvbmc%2BIDEuODggc2Vjb25kczwvdGQ%2BPC90YWJsZT5kZAIDDw8WAh8BBXk8aDQ%2BQ3JlYXRlIFRyYW5zYWN0aW9uIFNlcnZpY2UgUmV0dXJuPC9oND48Yj5Cb29sZWFuIHJlc3VsdDo8L2I%2BIFRydWU8YnIvPjxiIHN0eWxlPSdjb2xvcjpncmVlbjsnPlRFWFQgUkVTVUxUPC9iPjxicj48YnI%2BZGQCBQ8WAh8AZ2Rkmc4sy89qkfQk3kA8w7SRmIfxUSlxVgFqcNBtkeRIGvY%3D&__EVENTVALIDATION=%2FwEdADckdSulW6vTtuDCsutBCOVBHuYrnCLgzUYcVq885NAgzZBAD6J3MNtrSpGnxWrC%2FWRUrsGtEC0SKq72cYUQj6MHOXVRtuWyUUr8Al4rdtmt%2B8N2xUQitpn6Pknoh%2B5lQf9RKBwWYA7jtXNV6Fyp7wwwYPNRdSlGDjh7ClJg%2F%2FQI%2FsI9IlkxVupeEm%2FDBfOBjmgCFEW5ZOZ3zLZdk8YI6PE6An6aUbI2ZjLPEQsoBH9TOyLW4BJ%2FSTF3Uef4cbjA5Q6oOAbWKMEz9NXGrCaNaN6%2FMpyV5%2F1TvEYWD0yCXnmvyFCW58L34hS5XnYmVzVfcqcUSYbps0k8nVI8D9q4g88Z7oY8IGHKUKDgNd8Kojcr%2FtWV5ox%2FwpXSznh9NtViMcBsMIdnRXtkb14rIvygPErJhFC4ILqjKluJ7FnQqfbUh2wVFAAZqAAVW%2F7QOBwuGJsC4KiUWkyiTt32wEzVgrG55C2gUEtIrhiHZRDanokB6Pjrd%2B6AhBFz9xIwRXGyYSipKDigjvXCrUFe1qtus867Hkdv%2Fmywtqjc8bPQgNMmPZmHMCRBpaSZU%2Fh5766K3e%2FZaAzC5geU%2FGZZrIiHB%2BvOFu3Ip31cWL5V1piWa7JHh4Ck%2FnXjtEEXGp9uhBm0Ym%2Fq%2B8KAFXmT90AD%2FaBcOEqI4c4cQUqoy7AZ1%2BkYVPB39GBt33rofGUZhn9OTmViOoqzzIS3GQPZY9GEdkYtBRCGCBa6y0vMH4d%2BpjEUs1aRMtB7BcOyOKb3MRBTUDqtrd3loN3ma0HbQrCsdBnsAHCSBTq4obkUxHDtJf8dSY2HsN%2BMSiYZt0hmT4kEnnuNAaFBfGj7Oy49XaZ593dhlumGfM%2FFESYlqD233oVLoUueHRunUC66sgsPgZkHYlVHbiQOw0WXZZ5cbdYYXwr661mJ89CqNL7SXM5bHdHZdc8mjZKMhnMRSoTaHKS7nhfvrD%2Fx3IhQquPfSBscM%2BEl0ZjjjtTdVzRZn7DFyWrI8V%2FOY8R04aPRKvp5noI1x8SosQ8JtOO%2BaYKnFL9NCi0aug5qlXDG2aEfC1liIw8tcyTKyO4O3QU2jwgyGg0Cn1uu04sysgxEFpobCcsYBC13vLf00%2BldhvJhee6%2Fsf7z7jMzjigjz9OJ9sLxDWTNf435wga8mfxrwE8QZdUUwumdHowAQUaobtRYmVoJUTgx0Kzlww2Q0Vmf7egxEzjWuWP9tjw%3D&txtProntoID=_CleanInstallSite&txtAuthData=password&txtUsername=apiuser&txtUserPassword=@lph@deV2&ddlProtocol=http%3A%2F%2F&txtDomain=vm05.alphatrust.local&btnCreateTest2=Create+New+Transaction+2&txtTransactionID=&txtParticipantID=&txtDocumentID=&txtMetaDataName=&txtMetaDataValue=&txtTaskID=&txtAttachmentID=
Run Code Online (Sandbox Code Playgroud)
更新2
我甚至不确定Fiddler客户端如何首先看到SOAP.Fiddler(根据我的理解)拦截来自浏览器的客户端流量(这只是一个表单帖子),表单帖子告诉服务器上的应用程序在另一台服务器上(或在同一服务器上)调用WCF应用程序的Web服务在这种情况下服务器)然后WCF将响应数据发送回调用服务器.然后调用服务器只返回客户端的网页.所以,我所看到的只是客户端流量与服务器流量无关(即使客户端,呼叫服务器和WCF服务器在我的测试用例中都是同一台机器).