2014-11-13 2 views
2

Мне нужно позвонить в веб-сервис. Я создал прокси и вызвал метод. Но он продолжает терпеть неудачу. Поскольку API ожидает мыла/xml в заголовке, тогда как прокси-клиент, сгенерированный в Visual studio, отправляет текст/xml в заголовке.Изменение заголовка запроса мыла из текста/xml в soap/xml для asmx webservice в C#

Вопрос: Возможно ли изменить значение заголовка Content-Type для сгенерированного прокси-клиента?

+0

Это может помочь: https://social.msdn.microsoft.com/Forums/vstudio/en-US/32e62554-dbe5-483b-830f-df1d2b22a845/client-found-response-content-type-of-but -expected-textxml? forum = wcf – sr28

ответ

2

Content Type text/xml; charset=utf-8 was not supported by service

обычно это несоответствие в клиент/сервер привязок, где версия сообщение службы использует SOAP 1.2 (который ожидает приложения/мыло + XML) и версию в клиент использует SOAP 1.1 (который отправляет текст/xml). WSHttpBinding использует SOAP 1.2, BasicHttpBinding использует SOAP 1.1.

Обычно это похоже на wsHttpBinding с одной стороны и basicHttpBinding на другом.

Вы можете изменить конфигурацию на стороне клиента на WSHttpBinding, которая использует SOAP 1.2, и это повлияет на заголовок типа содержимого.

+0

Спасибо за ответ. Я смог изменить привязку к wsHttpBinding, и теперь он отправляет «application/soap + xml». Но конечная точка отклоняет запрос, потому что он ожидает «мыло/xml» явно – Ody

+0

Это спасло меня! Благодаря! :-) –

Смежные вопросы