Hlavní navigace

RESTFul Web Services a .NET

RESTFul Web Services získávají stále větší oblibu díky velmi jednoduchému principu a maximálnímu využití již existujících technologií a tím pádem i nezávislosti na platformě. V článku se nebudeme zabývat teorií REST, ale podíváme na konkrétní implementaci, která se jmenuje ADO.NET Data Services.

Jedna z nejzajímavějších novinek v .NET Framework 3.5 SP1 je podpora RESTFul Web Services v návaznosti na LINQ. Vytvoření služby pak spočívá ve vytvoření objektového modelu databáze buď pomocí designéru, který je součástí Visual Studia 2008, nebo utilitou z příkazové řádky. Takto vytvořený model se pak „podstrčí“ do ADO.NET Data Service a tím je služba naimplementovaná.

Jak tedy vytvořit na platformě nezávislého klienta?

Jako ukázku pro vytvoření klienta si zvolíme asi to nejuniverzálnější – webový prohlížeč. Naším úkolem bude vytvořit jednoduché hledání produktů v databázi pouze s využitím Javascriptu. Jedna z vlastností ADO.NET Data Services je možnost serializace výstupu do formátu JSON místo XML, konkrétně formát ATOM. To, jak se bude výstup serializovat, je dáno nastavením hlavičky Accept protokolu HTTP. ADO.NET Data Services jsou v podstatě rozhraní k databázi, a proto obsahují i dotazovací jazyk, který má možnosti podobné SQL.

Ukázka dotazu:

var request = new XMLHttpRequest(); request.onrea­dystatechange = …; request.open(„GET“, „http://…/Nor­thwind.svc/Pro­ducts?$filter=star­tswith(Produc­tName,%20'…')“, true); request.setRe­questHeader(„Ac­cept“, „application/json“); request.send();

Zpracování odpovědi můžeme provést funkcí eval nebo některou knihovnou pro práci s formátem JSON, která je například v Internet Explorer 8, součásti Javascript engine

Zpracování odpovědi:

var response = JSON.parse(re­quest.response­Text)[“d”]

Pokud si chcete sami vyzkoušet vytvoření RESTFul Web Service pomocí ADO.NET Data Services, stačí si stáhnout Visual Web Developer Express 2008, který je zdarma a lze ho využít ke komerčním účelům, nebo si počkejte na DreamSpark.

Štěpán Bechynský, specialista pro vývojové nástroje ve společnosti Microsoft v České republice

<![CDATA[ _gde_phdfbunlqd = new Image(1,1); _gde_phdfbunlqd­.src=‚http:gdec­z.hit.gemius.pl/_‘+(new Date()).getTi­me()+‚/redot.gif?id=nG3r­q4vpiCEJs5nzZ8Z­.k5ZznO3pO..K2RzPQ5fL96­3.Q7/stparam=phdfbun­lqd‘; //]]> 

Vitalia.cz: Taky věříte na pravidlo 5 sekund?

Taky věříte na pravidlo 5 sekund?

Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: 7 druhů hotových těst na vánoční cukroví

7 druhů hotových těst na vánoční cukroví

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Vitalia.cz: Jedlé kaštany jsou trpké, je třeba je tepelně upravit

Jedlé kaštany jsou trpké, je třeba je tepelně upravit

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Podnikatel.cz: 1. den EET? Problémy s pokladnami

1. den EET? Problémy s pokladnami

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Vitalia.cz: Spor o mortadelu: podle Lidlu falšovaná nebyla

Spor o mortadelu: podle Lidlu falšovaná nebyla

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí