SOAP

Article on other languages:

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire
П'ять рівнів моделі TCP/IP
5. Прикладний рівень

DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · RTP · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTSP · TLS (також SSL) · SDP · SOAP · GTP · STUN · NTP · (інші)

4. Транспортний рівень
TCP · UDP · DCCP · SCTP · RSVP · (інші)
3. Мережевий рівень
IP (IPv4 · IPv6) · OSPF · IS-IS · BGP · IPsec · ARP · RARP · RIP · IGMP · ICMP · ICMPv6 · (інші)
2. Канальний рівень
802.11 (WLAN) · 802.16 · Wi-Fi · WiMAX · ATM · DTM · Token ring · Ethernet · FDDI · Frame Relay · GPRS · EV-DO · HSPA · HDLC · PPP · PPTP · L2TP · ISDN · ARCnet · (інші)
1. Фізичний рівень
Ethernet physical layer · Модеми · PLC · SONET/SDH · G.709 · Optical fiber · Коаксіальний кабель · Подвійна пара · (інші)

SOAP — протокол обміну структурованими повідомленнями в розподілених обчислювальних системах, базується на форматі XML.

Спочатку SOAP призначався, в основному, для реалізації віддаленого виклику процедур (RPC), а назва була абревіатурою: Simple Object Access Protocol — простий протокол доступу до об'єктів. Зараз протокол використовуються для обміну повідомленнями в форматі XML, а не тільки для виклику процедур. SOAP є розширенням мови XML-RPC.

SOAP може використовуватись з будь-яким протоколом прикладного рівня: SMTP, FTP, HTTP та інш. Проте, його взаємодія з кожним із цих протоколів має свої особливості, які потрібно відзначити оремо. Найчастіше SOAP використовується разом з HTTP.

SOAP є одним із стандартів, на яких ґрунтується технологія веб-сервісів.

Зміст

Структура протоколу

Повідомлення SOAP структурується так:

SOAP- конверт

SOAP-заголовок
Елемент заголовку 1
Елемент заголовку 2
Елемент заголовку N
Тіло SOAP
Елемент тіла 1
Елемент тіла 2
Елемент тіла N

Приклад

Приклад 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-клієнтом, не буде розпізнано сервером WebLogic.

Посилання

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net