【发布时间】:2013-05-04 02:14:22
【问题描述】:
我已经 seen several questions 对此进行了讨论,但没有一个明确的演练如何捕获对 WCF Web 服务的 SOAP 请求。他们只是说“去安装 Fiddler2”。我能从提琴手中得到的只是正常的 HTTP 请求,但由于某种原因我永远无法获得原始 SOAP 请求谁能指导我看一个介绍这个特定场景的教程?
.NET Web 应用程序调用 WCF Web 服务上的 basicHTTP 端点。我需要捕获原始 SOAP 请求。我正在寻找一个完整的演练,因为出于某种原因我没有深入了解这个概念。
更新
这是我从 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=
更新 2
我什至不确定 Fiddler 客户端如何首先查看 SOAP。 Fiddler(据我了解)拦截来自浏览器的客户端流量(这只是一个表单帖子),该表单帖子告诉服务器上的应用程序对另一台服务器上的 WCF 应用程序进行 Web 服务调用(或在同一台服务器上)在这种情况下为服务器),然后 WCF 将响应数据发送回调用服务器。然后调用服务器只是将网页返回给客户端。所以,我看到的只是客户端流量,它与服务器到服务器的流量无关(即使客户端、调用服务器和 WCF 服务器在我的测试用例中都是同一台机器)。
【问题讨论】:
-
您在 Fiddler 的请求窗口上看到 RAW 选项卡了吗?对你来说够好吗?
-
@evgenyl 不,我没有。并且请求在开发环境中,所以它也不是 https。
-
@evgenyl 抱歉,我看到原始标签,但我没有看到任何肥皂。我发布了该视图中显示的内容。