- Soap
-
SOAP — протокол обмена структурированными сообщениями в распределённой вычислительной среде. Первоначально SOAP предназначался, в основном, для реализации удалённого вызова процедур (RPC), а название было аббревиатурой: Simple Object Access Protocol — простой протокол доступа к объектам. Сейчас протокол используется для обмена произвольными сообщениями в формате спецификация последней версии 1.2 протокола никак не расшифровывает название SOAP. SOAP является расширением протокола SMTP, HTTP и др. Однако его взаимодействие с каждым из этих протоколов имеет свои особенности, которые должны быть определены отдельно. Чаще всего SOAP используется поверх HTTP.
SOAP является одним из стандартов, на которых базируется технологии веб-сервисов.
Содержание
Структура протокола
Сообщение SOAP выглядит так:
SOAP-конверт SOAP-заголовок Элемент заголовка 1 Элемент заголовка 2 … Элемент заголовка N Тело SOAP Элемент тела N … Элемент тела 2 Элемент тела 1
Пример
Пример SOAP-запроса на сервер интернет-магазина:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <getProductDetails xmlns="http://warehouse.example.com/ws"> <productID>12345</productID> </getProductDetails> </soap:Body> </soap:Envelope>
Пример ответа:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <getProductDetailsResponse xmlns="http://warehouse.example.com/ws"> <getProductDetailsResult> <productID>12345</productID> <productName>Стакан граненый</productName> <description>Стакан граненый. 200 мл.</description> <price>9.95</price> <inStock>true</inStock> </getProductDetailsResult> </getProductDetailsResponse> </soap:Body> </soap:Envelope>
Недостатки
- Использование SOAP для передачи сообщений увеличивает их объём и снижает скорость обработки. В системах, где скорость важна, чаще используется пересылка XML документов через HTTP напрямую, где параметры запроса передаются как обычные HTTP параметры.
- Хотя SOAP является стандартом, различные программы часто генерируют сообщения в несовместимом формате. Например, запрос сгенерированный AXIS-клиентом, не будет понят сервером
См. также
- WDDX
Ссылки
Стандарты Консорциума Всемирной паутины Рекомендации W3C CDF · · CSS · · · · OWL · RDF · RDF Schema · SISR · · SOAP · SRGS · SSML · · Timed Text · VoiceXML · · · · · · XML Base · XML Events · XML Information Set · XML Schema · · · · · · · Примечания XHTML+SMIL Рабочие проекты CCXML · CURIE · InkML · XFrames · XFDL · WICD · XHTML+MathML+SVG
Wikimedia Foundation. 2010.