2012-01-20 1 views
0

Im, путаясь с WCF, может кто-то прояснить это для меня, пожалуйста.WCF binding confusion re Формат сообщения

Согласно книге WCF Микеле Леруу, это верно.

«Независимо от формата кодирования сообщения сообщения отображаются в проводнике как SOAP 1.1 или SOAP 1.2» - я подтвердил это, создав простую службу привязки net.tcp и использовал тестовый клиент WCF для просмотра запроса и ответ XML.

В соответствии с пунктом http://www.codemeit.com/wcf/wcf-restful-pox-json-and-soap-coexist.html верно следующее: «webHttpBinding указывает, что служба понимает общие HTTP-запросы вместо SOAP-запросов. Служба REST построена поверх общего HTTP-запроса с помощью GET HTTP-глагола».

Итак, как могут быть оба эти утверждения истинными?

ответ

2

WCF теперь имеет раздвоение личности. Подавляющее большинство из них говорит SOAP (1.1 или 1.2), а сообщения заканчиваются структурированным как SOAP на проводе, даже если кодер производит что-то иное, кроме XML.

Однако WebHttpBinding является особенным. Он использует кодировщик Json/POX, который удаляет все SOAP-кадрирование сообщения, просто отправляя тело сообщения, однако это происходит из-за структуры. Это означает, что его можно использовать для отправки любого типа содержимого по HTTP

+0

Спасибо. Разделилось ли с .NET 4? – SkeetJon

+0

Nope - это был .NET 3.5, который представил поддержку REST –