Webové služby - co jsou a k čemu slouží
Co jsou webové služby podle Wikipedie:
Webová služba je podle definice W3C řešení, jak spolu aplikace mohou komunikovat a vyměňovat si informace přes Internet.
Pokusím se webové služby představit trochu podrobněji. Webové služby mají blízko k tzv. RPC (Remote Procedure Call neboli vzdálené volání procedur). Lépe řečeno z něho vycházejí.
V praxi si vzdálené volání procedur (RPC) můžeme představit jako komunikaci dvou počítačů v síti - klient a server. Klient pomocí RPC volá nějakou proceduru na serveru a ten klientovi vrací výsledná data. Uvažujme příklad meteorologické stanice a počítače u nás doma, kde chceme zobrazovat aktuální teplotu. V praxi to vypadá tak, že klient serveru předá nějaké vstupní parametry (například zítřejší datum) a pošle požadavek:
GetTemperature('2008-11-05');
Na straně klienta se zpráva zabalí do HTTP požadavku a odešle se na server. Server zprávu zpracuje, zjistí, jaká bude zítra teplota a vytvoří se odpověď. Ta se opět zabalí jako HTTP zpráva a je odeslána zpět klientovi. Tomu již dojde například číslo 14 a klient už ví, že zítra bude 14°.
Na uvedeném příkladě server nabízí klientovi službu - "zjištění aktuální teploty" a protože komunikace mezi klientem a serverem probíhá přes web, jedná se o webovou službu.
V praxi je princip webových služeb velmi podobný. Na straně serveru se musí určit, jaké procedury budou k dispozici, často se také mluví o tzv. "exportu" procedur. Na straně klienta se naopak musí určit adresa a port serveru, kde se dané procedury budou ve skutečnosti provádět.
Základní protokoly, které zajišťují komunikaci jsou:
- XML-RPC - starší multiplatformní protokol, kde není nutné definovat typy (rozumnějme strukturu) přenášených dat. Naproti škála datových typů, které je možné v tomto protokolu použít, je značně omezena.
- SOAP - částečně nástupce protokolu XML-RPC, opět multiplatformní, modernější verze, která ovšem pro svou funkci vyžaduje přesné zadání struktury přenášených dat (tzv. WSDL (Web Services Description Language)). Díky tomu ale umožňuje přenášet rozmanitější datové struktury.
- UDDI
Jak přechytračit Captcha Resolver (20.01.2010)




