Получение "WSE003: вход не был действительным сообщением SOAP" при каждом вызове WAP 2.0 SoapHttpRouter

Я уже пробовал несколько разных SOAP-сообщений, даже те, которые имеют пустой заголовок и тело, но безуспешно попали в мой производный от SoapHttpRouter класс:-(

Кроме того, когда я нажимаю на.asmx-URL с помощью браузера, возникает такая ошибка... здесь подробно описывается трассировка стека ошибки:

[NotSupportedException: WSE003: The input was not a valid SOAP message.]
Microsoft.Web.Services2.Messaging.SoapHttpRouter.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext httpContext, AsyncCallback callback, Object asyncState) +134
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8677954
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155

Я надеюсь, что есть кто-то, у кого была такая же проблема. Буду очень признателен за вашу помощь!

3 ответа

Обычно, когда я получаю это сообщение, это происходит из-за ошибки на стороне сервера, и он отправляет страницу ошибки HTML по умолчанию обратно вместо правильно отформатированного сообщения SOAP.

Я бы попробовал пройтись по коду на стороне сервера (если это возможно), чтобы убедиться в отсутствии проблем.

Знаете ли вы, что WSE 2.0 чрезвычайно устарел? Даже больше, чем WSE 3.0.

Я недавно столкнулся с этой проблемой. Решением для меня было добавить SOAPAction HttpHeader к запросу, чтобы заголовок запроса выглядел примерно так:

POST <web service url> HTTP/1.1
Content-Type: text/xml; charset=utf-8
SOAPAction: <action url>
Host: <host>
Content-Length: xxx
Другие вопросы по тегам