Главная

Java

BuzzWords


SOAP

SOAP – это целое семейство протоколов и стандартов, для обмена структурированными сообщениями.

Это более тяжеловесный и сложный вариант с точки зрения машинной обработки.
Поэтому REST работает быстрее.

Исходя из всех недостатков XML-RPC создали протокол SOAP

SOAP (от англ. Simple Object Access Protocol - простой протокол доступа к объектам; вплоть до спецификации 1.2) - протокол обмена структурированными сообщениями в распределённой вычислительной среде. Первоначально SOAP предназначался в основном для реализации удалённого вызова процедур (RPC). Сейчас протокол используется для обмена произвольными сообщениями в формате XML, а не только для вызова процедур. Официальная спецификация последней версии 1.2 протокола никак не расшифровывает название SOAP. SOAP является расширением протокола XML-RPC.

SOAP может использоваться с любым протоколом прикладного уровня: SMTP, FTP, HTTP, HTTPS и др. Однако его взаимодействие с каждым из этих протоколов имеет свои особенности, которые должны быть определены отдельно. Чаще всего SOAP используется поверх HTTP.

Обычно SOAP используют протокол HTTP и метод POST .


Структура SOAP сообщений:
Простые типы в SOAP (унаследованы из XML Schema):

Пример:


// Запрос:
POST /MyService HTTP/1.1
Host: www.servicesite.com
Content-Type:text/xml; charset="utf-8"
Content-Length: xxxx
SOAPAction: "www.servicesite.com/action"

 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/ envelope" 
 SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding">
 <SOAP-ENV:Body>
 <m:GetSomeValue xmlns:m=" www.servicesite.com/action ">
 <symbol>SYM </symbol>
 </m:GetSomeValue>
 </SOAP-ENV:Body>
 </Soap-ENV:Envelope> 



Полезные ссылки: