Программирование | SOAP (Simple Object Access Protocol)
SOAP -
протокол обмена структурированными сообщениями в распределённой вычислительной среде. Поддерживается консорциумом W3C (http://www.w3.org/TR/soap/).
Протокол SOAP создан в 1998 году командой разработчиков под руководством Дейва Винера (Dave Winer), работавшей в корпорации
Microsoft и фирме Userland,
но затем передан в консорциум W3C.
В версии 1.1 SOAP расшифровывался как Simple Object Access Protocol — простой протокол доступа к объектам. Это название отражало его первоначальное назначение — обращаться к методам удаленных объектов. Сейчас назначение
SOAP изменилось, поэтому разные разработчики предлагали свои варианты расшифровки. Поэтому в версии 1.2 аббревиатуру решили никак не
расшифровывать. Протокол SOAP не различает вызов процедуры и ответ на него, а просто определяет формат послания (message) в виде документа
XML. Послание может содержать вызов процедуры, ответ на него, запрос на выполнение каких-то других действий или просто текст.
Спецификацию SOAP не интересует содержимое послания, она задает только его
оформление. SOAP основан на языке XML и расширяет некоторый протокол прикладного уровня —
HTTP,
FTP, SMTP и т.д. Как правило чаще всего используется HTTP.
Вместо использования HTTP для запроса
HTML-страницы, которая будет показана в
браузере, SOAP отправляет посредством HTTP-запроса XML-сообщение и получает результат в HTTP-отклике. Для правильной обработки
XML-сообщения процесс-«слушатель» HTTP (напр. Apache или Microsoft IIS)
должен предоставить SOAP-процессор, или, другими словами, должен иметь
возможность обрабатывать XML.
SOAP является самой главной частью технологии Web-сервисов. Он осуществляет
перенос данных по сети из одного места в другое. SOAP обеспечивает доставку данных веб-сервисов. Он позволяет отправителю и получателю XML-
документов поддерживать общий протокол передачи данных, что
обеспечивает эффективность сетевой
связи.
SOAP – это базовая однонаправленная модель соединения, обеспечивающая
согласованную передачу сообщения от отправителя к получателю, потенциально
допускающая наличие посредников, которые могут обрабатывать часть сообщения или добавлять к нему дополнительные элементы. Спецификация SOAP содержит соглашения по преобразованию однонаправленного обмена сообщениями в соответствии с принципом «запрос/ответ», а также определяет как осуществлять передачу всего XML-документа.
SOAP предназначен для поддержания независимого абстрактного
протокола связи, обеспечивающего коммуникацию двух и более приложений, сайтов, предприятий и т.п., реализованных на разных технологиях и аппаратных средств.
Общая структура SOAP сообщения
SOAP-сообщение представляет собой XML-документ; сообщение состоит из трех
основных элементов: конверт (SOAP Envelope), заголовок (SOAP Header) и тело
(SOAP Body).
Пример SOAP сообщения:
< SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"xmlns:t="www.example.com" >
< SOAP-ENV:Header >
< /SOAP-ENV:Header >
< SOAP-ENV:Body >
< t:CurrentDate >
< Year>2011
< Month>February
< Day>12
< Time>18:02:00
< /t:CurrentDate >
< /SOAP-ENV:Body >
< /SOAP-ENV:Envelope >
© greenmile
Источники:
khpi-iip.mipk.kharkiv.edu
В начало
Программирование | SOAP (Simple Object Access Protocol)