Čo je SOAP (Simple Object Access Protocol)?
SOAP je protokol na výmenu štruktúrovaných správ medzi aplikáciami, založený na XML. Vznikol v roku 1998 pôvodne ako XML-RPC a bol dlho dominantným štandardom pre webové služby. Dnes je vo väčšine prípadov nahradený jednoduchšími REST API.
Definícia SOAP (Simple
Čo je SOAP
SOAP (Simple Object Access Protocol) je protokol na výmenu správ medzi aplikáciami, založený na XML. Pôvodne vznikol v roku 1998 ako XML-RPC a bol vyvinutý spoločnosťami Microsoft, DevelopMentor a Userland Software. Aktuálna verzia SOAP 1.2 bola publikovaná v apríli 2007 ako odporúčanie W3C.
Na rozdiel od REST, ktorý je architektonický štýl, SOAP je plnohodnotný protokol s presne definovanou štruktúrou správ, chybovým modelom a bezpečnostnými rozšíreniami (WS-Security).
Štruktúra SOAP správy
- Envelope (obálka) — koreňový XML element, ktorý identifikuje dokument ako SOAP správu
- Header (hlavička) — voliteľná časť s metadátami (autentifikácia, transakcie, smerovanie)
- Body (telo) — obsahuje samotné dáta požiadavky alebo odpovede
- Fault (chyba) — štandardizovaný element na hlásenie chýb
SOAP sa definuje pomocou WSDL (Web Services Description Language) — XML súboru, ktorý popisuje dostupné operácie. Hoci je dnes REST dominantný, SOAP sa stále používa v bankovníctve, poisteniach a vládnych systémoch, kde sa cení jeho formálnosť a vstavaná bezpečnosť.
Praktický príklad
Príklad: Banka poskytuje SOAP webovú službu na overenie čísla účtu.
Vaša aplikácia pošle XML správu zabalenú v SOAP Envelope s elementom <OverUcet><IBAN>SK89...</IBAN></OverUcet>. Server odpovie SOAP správou s výsledkom overenia. Celá komunikácia je zabezpečená cez WS-Security s digitálnym podpisom — presne to, čo banka vyžaduje.
Často kladené otázky
Čo je SOAP a na čo sa používa?
SOAP je protokol na výmenu XML správ medzi aplikáciami. Používa sa predovšetkým v enterprise prostredí — bankovníctve, poisteniach a vládnych systémoch, kde sa vyžaduje formálna definícia rozhrania a vstavaná bezpečnosť.
Aký je rozdiel medzi SOAP a REST?
SOAP je striktný protokol založený na XML so vstavanou bezpečnosťou a transakciami. REST je jednoduchší architektonický štýl, ktorý typicky používa JSON. REST je flexibilnejší a ľahší na implementáciu, SOAP je robustnejší.
Je SOAP zastaraný?
Pre nové projekty sa väčšinou preferuje REST alebo GraphQL. Avšak SOAP je stále aktívne používaný v legacy systémoch, bankách a regulovaných odvetviach, kde sa cení jeho formálnosť a WS-Security.
Súvisiace pojmy
Potrebujete pomôcť s webom?
Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.