Веб-сервисы POST to REST с использованием API: сериализация тела - PullRequest
9 голосов
/ 23 ноября 2011

Я пытаюсь использовать веб-сервис REST, следуя указаниям здесь: http://social.technet.microsoft.com/wiki/contents/articles/invoke-restful-web-services-with-biztalk-server-2010.aspx

Однако GET, похоже, работают правильно, но POST не работают, потому что, каким-то образом, сообщениесериализуется как строка.

Я получаю:

POST /my_app/12005ab0-1522-71e1-0dde-0a0801c50000 HTTP/1.1
Content-Type: application/xml; charset=utf-8
Host: bsmshell.inovaprime.com:81
Content-Length: 174
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">&lt;body xmlns="http://microsoft.com/schemas/samples/biztalkwebhttp/1.0"&gt;HelloWorld&lt;/body&gt;</string>

Вместо:

POST /my_app/12005ab0-1522-71e1-0dde-0a0801c50000 HTTP/1.1
Content-Type: application/xml; charset=utf-8
Host: bsmshell.inovaprime.com:81
Content-Length: 174
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

<body xmlns="http://microsoft.com/schemas/samples/biztalkwebhttp/1.0">HelloWorld</body>

Это с сообщением типа: 12005ab0-1522-71e1-0dde-0a0801c50000 application / xml;charset = utf-8 HelloWorld

Конфигурации портов соответствуют указанным в статье.

Есть ли какие-либо указатели на возможную причину, по которой я вижу такое поведение?

Спасибо

Ответы [ 2 ]

1 голос
/ 04 января 2013

Message.CreateMessage (request.Version, request.Headers.Action, bodyElement.ToString ()); Изменив его на: Message.CreateMessage (request.Version, request.Headers.Action, bodyElement); решил проблему.

[Публикация в порядке, чтобы другие могли узнать]

0 голосов
/ 17 января 2012

Причина: content-type

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...