SOAP

sieciowy protokół komunikacyjny

SOAP (ang. Simple Object Access Protocol) – protokół komunikacyjny wykorzystujący XML do kodowania wywołań i najczęściej protokół HTTP do ich przenoszenia, możliwe jest jednak wykorzystanie innych protokołów do transportu danych.

Struktura SOAP

SOAP jest standardem W3C, którego głównym celem było zastąpienie bardziej specyficznych protokołów komunikacyjnych (RPC), których wykorzystanie może być ograniczone poprzez zapory sieciowe lub inne zabezpieczenia[1].

Nazwa protokołu jest myląca, ponieważ przede wszystkim dotyczy usług sieciowych, a nie obiektów definiowanych w sposób znany z programowania obiektowego[2].

Budowa

edytuj

Dokument SOAP zawiera w sobie nadrzędny znacznik <envelope>, zawierający obowiązkowy znacznik <body> oraz opcjonalny znacznik <header>[3]. Najważniejsze informacje przesyłane tym protokołem ulokowane są wewnątrz znacznika <body>, natomiast element <header> może zawierać opcjonalne dane wymagane w specyficznych zastosowaniach[3]. Opcjonalny znacznik <fault> występuje w przypadku wystąpienia błędu[3].

Przykład dokumentu SOAP

edytuj
POST /InStock HTTP/1.1
Host: www.example.org
Content-Type: application/soap+xml; charset=utf-8
Content-Length: nnn

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Body xmlns:m="http://www.example.org/stock">
  <m:GetStockPrice>
    <m:StockName>IBM</m:StockName>
  </m:GetStockPrice>
</soap:Body>
</soap:Envelope>

Implementacje

edytuj

Implementacje SOAP to m.in.:

Zobacz też

edytuj

Przypisy

edytuj
  1. SOAP Introduction [online], w3schools.com [dostęp 2024-04-25] [zarchiwizowane z adresu 2014-03-07] (ang.).
  2. Josuttis, Nicolai M. SOA in practice: the art of distributed system design. O’Reilly Media, Inc., 2007, strona: 217.
  3. a b c SOAP Version 1.2 Part 1: Messaging Framework (Second Edition) [online], www.w3.org [dostęp 2017-11-26] (ang.).

Linki zewnętrzne

edytuj