Как просмотреть ASMX SOAP с помощью Fiddler2? - PullRequest
2 голосов
/ 27 января 2010

Кто-нибудь знает, может ли Fiddler отображать необработанные сообщения SOAP для веб-служб ASMX? Я тестирую простой веб-сервис с использованием Fiddler2 и Storm, и результаты меняются (Fiddler показывает обычный xml, а Storm показывает SOAP-сообщения). См. Пример запроса / ответа ниже:

Fiddler2 Запрос:

POST /webservice1.asmx/Test HTTP/1.1
Accept: */*
Referer: http://localhost.:4164/webservice1.asmx?op=Test
Accept-Language: en-us
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2; MS-RTC LM 8)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: localhost.:4164
Content-Length: 0
Connection: Keep-Alive
Pragma: no-cache

Ответ Fiddler2:

HTTP/1.1 200 OK
Server: ASP.NET Development Server/9.0.0.0
Date: Thu, 21 Jan 2010 14:21:50 GMT
X-AspNet-Version: 2.0.50727
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Content-Length: 96
Connection: Close
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">Hello World</string>

Запрос шторма (только тело):

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <Test xmlns="http://tempuri.org/" />
  </soap:Body>
</soap:Envelope>

Storm Response:

 Status Code: 200
 Content Length : 339
 Content Type: text/xml; charset=utf-8
 Server: ASP.NET Development Server/9.0.0.0
 Status Description: OK

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <TestResponse xmlns="http://tempuri.org/">
      <TestResult>Hello World</TestResult>
    </TestResponse>
  </soap:Body>
</soap:Envelope>

Спасибо за любую помощь.

Ответы [ 2 ]

3 голосов
/ 29 января 2010

Ответ другой, потому что запросы разные. Ваш запрос Fiddler2 не содержит содержимого и заголовков SOAP, поэтому получаемый ответ является стандартным ответом XML.

С другой стороны, ваш запрос Storm публикует тело запроса SOAP (и, как я полагаю, заголовки запроса SOAP, несмотря на то, что они не включены). Поскольку веб-служба была вызвана с использованием SOAP, ответом будет SOAP.

1 голос
/ 29 января 2010

Fiddler ничего не знает о SOAP. Он показывает вам, что на проводе.

...