Úvod do programování webových služeb ve spravovaném kódu

Pomocí webových služeb můžete vyměňovat volně vázaná data jako zprávy XML mezi heterogenními systémy.Ačkoli vzdálený přístup k datům a aplikační logika není novou koncepcí, její volně vázaný způsob je.Předchozí pokusy, například DCOM, IIOP a Java/RMI, požadovaly těsnou integraci mezi klientem a serverem.Spíše než použití kontraktu založeném na standardu jazyka XML, který je základem pro webové služby, používaly binární formáty dat, které jsou konkrétní a implementačně konkrétní pro operační systém.

Zatímco DCOM, IIOP a Java/RMI vyžadují určitou technologii komponenty nebo objekt volající konvenci, webové služby ne.Jediný předpoklad mezi klientem a serverem je, že příjemci budou rozumět zprávám, které obdrží.Jinými slovy, klient a server se zavazují ke kontraktu, v tomto případě kontraktu, který je definován pomocí WSDL a definice schémat XSL (jazyk XSD).Dále, klient a server komunikují pomocí generovaných zpráv, které kontrakt přijímá pomocí zadaného přenosového protokolu jako HTTP.V důsledku toho programy napsané v libovolném jazyce, pomocí libovolných modelů komponent a spuštěné v libovolném operačním systému mohou přistupovat k Webovým službám.Mimoto, pružnost textového formátu jako jazyka XML navíc umožňuje ve volně vázaném způsobu výměny zpráv vyvíjet se v čase.Toto volné spojování je povinné v prostředích, kde není možné současně aktualizovat všechny strany při výměně zpráv.

Tato technologie se zachovává kvůli zpětné kompatibilitě se stávajícími aplikacemi a nedoporučuje se používat pro vývoj. Informace o doporučených alternativách najdete v tomto tématu:
 Služby Windows Communication Foundation a služby WCF Data Services v sadě Visual Studio

Webové služby a rozhraní .NET Framework

Pokud vytvoříte webovou službu s použitím spravovaného kódu, který je založen na technologi ASP.NET a technologii .NET Framework, nejste povinni zapisovat kód infrastruktury ke zvládnutí detailů, jako jsou komunikační protokoly nebo přenosy zpráv.Navíc pokud vytvoříte webovou službu, která používá stránku architektury technologie ASP.NET, vaše služby mohou použít mnoho funkcí rozhraní .NET Framework, jako například ověřování, mezipaměť a řízení stavu.

V aplikačním modelu technologie ASP.NET webové stránky používají příponu .aspx.K odlišení webových služeb od běžných stránek technologie ASP.NET webové služby používají příponu .asmx.

K usnadnění obousměrné výměny dat pomocí webových služeb musí vývojář:

  • Vytvořit webovou službu. Když jste vytvořili webovou službu XML, vytvořili jste aplikaci, která poskytuje funkce webových služeb XML klientům.

  • Přístup k webové službě.Když přistoupíte k webové službě, klientská aplikace vyhledá, odkáže a použije funkce obsažené ve webové službě.Klient webové služby XML je obvykle aplikace.Tato aplikace může odesílat, přijímat a zpracovat zprávy do a z webové služby.

  • Stejný vývojář nemusí nutně vytvořit webovou službu, a pak k ní přistoupit.Některé webové služby, například služba informace o dopravě, mohou být vytvořeny jednou entitou (například státní ministerstvo dopravy).Avšak tato služba může získat přístup k mnoha webům, jako například weby pro nákladní dodavatelské společnosti.

Webové služby mohou být samostatné aplikace nebo dílčí komponenty z větší webové aplikace.Předpokládejme například, že vytváříte webovou aplikaci, která prodává knihy online.Vaše webová aplikace může používat webové služby takto:

  • Vytvořit webovou službu.Vaše aplikace poskytuje její pořadí zpracování logiky, jako webová služba.Vaše weby přidružené společnosti přistupují k této službě ve webových aplikacích, které prodávají knihy online.

  • Přístup k webové službě. Vaše aplikace přistupuje k webové službě, která byla vyvinuta jinou online společností, která se specializuje na psaní recenzí pro online knihkupce.Jestliže návštěvník vašeho online obchodu prohlíží ceny konkrétní knihy, vidí recenze stejné knihy na stejné stránce.

Nezapomeňte, že můžete přistupovat k webové službě z mnoha různých typů aplikací, včetně jiných webových služeb, webových aplikací, aplikací systému Windows a aplikací konzoly.Klient však musí být schopen odesílat zprávy webové službě.