Co jsou to klidné webové služby?
Restful Web Services je lehká, udržovatelná a škálovatelná služba postavená na architektuře REST. Restful Web Service, vystavte API z vaší aplikace bezpečným, jednotným a bezstavovým způsobem volajícímu klientovi. Volající klient může provádět předdefinované operace pomocí služby Restful. Základní protokol pro REST je HTTP. REST znamená REpresentational State Transfer.
V tomto výukovém programu REST API se naučíte-
- RESTful klíčové prvky
- Uklidňující metody
- Proč klidný
- Klidná architektura
- Zásady a omezení RestFul
- Vytvořte svou první klidnou webovou službu v ASP.NET
- Spuštění první klidné webové služby
- Testování vaší první klidné webové služby
RESTful klíčové prvky
Webové služby REST prošly od svého vzniku opravdu dlouhou cestou. V roce 2002 vydalo konsorcium Web definici webových služeb WSDL a SOAP. To vytvořilo standard způsobu implementace webových služeb.
V roce 2004 webové konsorcium rovněž vydalo definici dalšího standardu s názvem RESTful. Za posledních pár let se tento standard stal velmi populárním. A je využíván mnoha populárními webovými stránkami po celém světě, které zahrnují Facebook a Twitter.
REST je způsob přístupu k prostředkům, které leží v konkrétním prostředí. Můžete mít například server, který by mohl hostovat důležité dokumenty nebo obrázky nebo videa. To vše je příkladem zdrojů. Pokud klient, řekněme, webový prohlížeč potřebuje některý z těchto prostředků, musí na server odeslat požadavek na přístup k těmto zdrojům. Služby REST nyní definují způsob přístupu k těmto zdrojům.
Klíčové prvky implementace RESTful jsou následující:
-
Zdroje - Prvním klíčovým prvkem je samotný zdroj. Předpokládejme, že webová aplikace na serveru má záznamy několika zaměstnanců. Předpokládejme, že URL webové aplikace je http://demo.guru99.com . Nyní za účelem přístupu k prostředku záznamu zaměstnance prostřednictvím služeb REST lze vydat příkaz http://demo.guru99.com/employee/1 - Tento příkaz řekne webovému serveru, aby poskytl podrobnosti o zaměstnanci, jehož číslo zaměstnance je 1.
-
Slovesa požadavku - popisují, co chcete se zdrojem dělat. Prohlížeč vydá sloveso GET, aby instruoval koncový bod, který chce získat data. Existuje však mnoho dalších sloves včetně věcí jako POST, PUT a DELETE. V případě příkladu http://demo.guru99.com/employee/1 tedy webový prohlížeč ve skutečnosti vydává sloveso GET, protože chce získat podrobnosti o záznamu zaměstnance.
-
Záhlaví požadavku - Jedná se o další pokyny zaslané spolu s požadavkem. Mohou definovat typ požadované odpovědi nebo podrobnosti autorizace.
-
Tělo požadavku - data jsou odeslána s požadavkem. Při požadavku POST na webové služby REST se data v požadavku obvykle odesílají. Ve volání POST klient ve skutečnosti řekne webovým službám REST, že chce přidat prostředek na server. Tělo požadavku by tedy mělo obsahovat podrobnosti o prostředku, který je třeba přidat na server.
-
Tělo odpovědi - Toto je hlavní část odpovědi. Takže v našem příkladu RESTful API, pokud bychom měli dotazovat webový server prostřednictvím požadavku http://demo.guru99.com/employee/1 , mohl by webový server vrátit dokument XML se všemi podrobnostmi zaměstnance v Response Tělo.
-
Kódy stavu odpovědi - Tyto kódy jsou obecné kódy, které se vracejí spolu s odpovědí z webového serveru. Příkladem je kód 200, který se normálně vrátí, pokud při vrácení odpovědi klientovi nedojde k žádné chybě.
Uklidňující metody
Níže uvedený diagram ukazuje většinou všechna slovesa (POST, GET, PUT a DELETE) a příklad REST API toho, co by znamenaly.
Předpokládejme, že máme v místě definovanou webovou službu RESTful. http://demo.guru99.com/employee . Když klient učiní jakýkoli požadavek na tuto webovou službu, může zadat kterékoli z běžných sloves HTTP GET, POST, DELETE a PUT. Níže je uvedeno, co by se stalo, kdyby klient poslal příslušná slovesa.
- POST - To by bylo použito k vytvoření nového zaměstnance pomocí webové služby RESTful
- ZÍSKAT - Toto by bylo použito k získání seznamu všech zaměstnanců používajících webovou službu RESTful
- PUT - Používá se k aktualizaci všech zaměstnanců pomocí webové služby RESTful
- ODSTRANIT - Použije se k odstranění všech zaměstnanců využívajících služby RESTful
Pojďme se podívat z pohledu pouze jednoho záznamu. Řekněme, že existoval záznam zaměstnance s počtem zaměstnanců 1.
Následující akce by měly svůj příslušný význam.
- POST - To by nebylo použitelné, protože načítáme data zaměstnance 1, která jsou již vytvořena.
- ZÍSKAT - Toto by se použilo k získání podrobností zaměstnance se zaměstnancem č. 1 pomocí webové služby RESTful
- PUT - Slouží k aktualizaci podrobností zaměstnance se zaměstnancem č. 1 pomocí webové služby RESTful
- ODSTRANIT - Slouží k odstranění údajů o zaměstnanci se zaměstnancem č. 1
Proč klidný
Klidný většinou získal popularitu z následujících důvodů:
- Heterogenní jazyky a prostředí - To je jeden ze základních důvodů, který je stejný, jak jsme viděli také pro SOAP.
- Umožňuje vzájemnou komunikaci webových aplikací postavených na různých programovacích jazycích
- S pomocí služeb Restful mohou tyto webové aplikace pobývat v různých prostředích, některé mohou být v systému Windows a jiné v systému Linux.
Ale nakonec, bez ohledu na to, jaké je prostředí, konečný výsledek by měl být vždy stejný, že by měli být schopni spolu mluvit. Klidné webové služby nabízejí tuto flexibilitu aplikacím postaveným na různých programovacích jazycích a platformách pro vzájemnou komunikaci.
Níže uvedený obrázek uvádí příklad webové aplikace, která vyžaduje komunikaci s jinými aplikacemi, jako je Facebook, Twitter a Google.
Pokud by nyní klientská aplikace musela pracovat se stránkami, jako je Facebook, Twitter atd., Pravděpodobně by musela vědět, v jakém jazyce jsou založeny Facebook, Google a Twitter a také na jaké platformě jsou postaveny.
Na základě toho můžeme napsat kód rozhraní pro naši webovou aplikaci, ale mohlo by se to ukázat jako noční můra.
Facebook, Twitter a Google zveřejňují své funkce ve formě klidných webových služeb. To umožňuje jakékoli klientské aplikaci volat tyto webové služby prostřednictvím REST.
- Událost Zařízení - V dnešní době musí vše fungovat na mobilních zařízeních, ať už jde o mobilní zařízení, notebooky nebo dokonce systémy automobilů.
Dokážete si představit, kolik úsilí se snažíte kódovat aplikace na těchto zařízeních, abyste mohli mluvit s běžnými webovými aplikacemi? Restful API's can make this job simpler because as mentioned in point no 1, you really don't need to know what is the underlying layer for the device.
- Konečně je to událost Cloudu - vše se přesouvá do cloudu. Aplikace se pomalu přesouvají do cloudových systémů, například v Azure nebo Amazon. Azure a Amazon poskytují mnoho rozhraní API založených na architektuře Restful. Aplikace proto nyní musí být vyvíjeny tak, aby byly kompatibilní s cloudem. Jelikož všechny cloudové architektury fungují na principu REST, má větší smysl, aby webové služby byly programovány na architektuře založené na službách REST, aby co nejlépe využívaly cloudové služby.
Klidná architektura
Aplikace nebo architektura považovaná za RESTful nebo REST ve stylu má následující charakteristiky
- Stav a funkčnost jsou rozděleny na distribuované prostředky - To znamená, že každý zdroj by měl být přístupný pomocí běžných příkazů HTTP GET, POST, PUT nebo DELETE. Pokud tedy někdo chtěl získat soubor ze serveru, měl by být schopen vydat požadavek GET a získat soubor. Pokud chtějí vložit soubor na server, měli by být schopni vydat požadavek POST nebo PUT. A nakonec, pokud chtěli odstranit soubor ze serveru, vydají požadavek ODSTRANIT.
- Architektura je klient / server, bezstavová, vrstvená a podporuje ukládání do mezipaměti -
- Klient-server je typická architektura, kde serverem může být webový server hostující aplikaci a klient může být stejně jednoduchý jako webový prohlížeč.
- Bez státní příslušnosti znamená, že stav aplikace není udržován v REST.
Například pokud odstraníte prostředek ze serveru pomocí příkazu DELETE, nemůžete očekávat, že informace o odstranění budou předány dalšímu požadavku.
Aby bylo zajištěno, že je zdroj odstraněn, budete muset vydat požadavek GET. Požadavek GET by se použil k prvnímu získání všech prostředků na serveru. Poté by bylo potřeba zjistit, zda byl zdroj skutečně odstraněn.
Zásady a omezení RESTFul
Architektura REST je založena na několika charakteristikách, které jsou rozpracovány níže. Každá webová služba RESTful musí splňovat níže uvedené charakteristiky, aby mohla být nazývána RESTful. Tyto charakteristiky se také nazývají principy návrhu, které je třeba dodržovat při práci se službami založenými na RESTful.
- Klient-server RESTFul
Toto je nejzákladnější požadavek architektury založené na REST. To znamená, že server bude mít webovou službu RESTful, která by klientovi poskytovala požadované funkce. Odeslání klienta vyžaduje webovou službu na serveru. Server by buď odmítl požadavek, nebo vyhověl a poskytl klientovi odpovídající odpověď.
- Bez státní příslušnosti
Koncept bez státní příslušnosti znamená, že je na klientovi, aby zajistil, že budou serveru poskytnuty všechny požadované informace. To je vyžadováno, aby server mohl odpovídajícím způsobem zpracovat odpověď. Server by mezi požadavky klienta neměl udržovat žádný druh informací. Je to velmi jednoduchá nezávislá sekvence otázek a odpovědí. Klient položí otázku, server na ni odpovídajícím způsobem odpoví. Klient položí další otázku. Server si nebude pamatovat předchozí scénář odpovědi na otázku a bude muset na novou otázku odpovědět nezávisle.
- Mezipaměti
Koncept mezipaměti má pomoci s problémem bez státní příslušnosti, který byl popsán v posledním bodě. Vzhledem k tomu, že každý požadavek klienta na server má nezávislou povahu, může klient někdy požádat server o stejný požadavek znovu. A to i přesto, že o to již v minulosti požádala. Tento požadavek přejde na server a server odpoví. To zvyšuje přenos v síti. Mezipaměť je koncept implementovaný na straně klienta k ukládání požadavků, které již byly odeslány na server. Pokud tedy klient zadá stejný požadavek, místo toho, aby šel na server, přejde do mezipaměti a získá požadované informace. Tím se ušetří objem tam a zpět síťového provozu z klienta na server.
- Vrstvený systém
Koncept vrstveného systému spočívá v tom, že mezi klienta a skutečný server hostující webovou službu RESTFul lze vložit jakoukoli další vrstvu, například vrstvu middlewaru (vrstva middlewaru je místem, kde je vytvořena veškerá obchodní logika. Může to být služba navíc. vytvořeno, se kterým by klient mohl komunikovat, než zavolá webové službě.). Úvod této vrstvy však musí být transparentní, aby nenarušil interakci mezi klientem a serverem.
- Rozhraní / jednotná smlouva
Toto je základní technika, jak by měly fungovat webové služby RESTful. RESTful v zásadě funguje na webové vrstvě HTTP a pro práci s prostředky na serveru používá níže uvedená klíčová slovesa
- POST - Vytvoření prostředku na serveru
- ZÍSKAT - Načtení prostředku ze serveru
- PUT - Chcete-li změnit stav zdroje nebo jej aktualizovat
- ODSTRANIT - Odebrání nebo odstranění prostředku ze serveru
Vytvořte svou první klidnou webovou službu v ASP.NET
Nyní v tomto výukovém programu REST API se naučíme, jak vytvořit webovou službu Restful v ASP.NET:
Webové služby lze vytvářet v různých jazycích. K vytváření služeb založených na REST lze použít mnoho integrovaných vývojových prostředí.
V tomto příkladu rozhraní RESTful API vytvoříme naši aplikaci REST v .Net pomocí sady Visual Studio. V našem příkladu pro Restful web services budeme emulovat následující příklad služby REST.
Budeme mít webovou službu Restful, která bude pracovat na níže uvedené sadě dat.
Níže uvedená sada dat představuje příklad rozhraní REST API společnosti, která vystavuje výukové programy, které mají na základě výukového programu.
Tutorialid | Název výukového programu |
0 | Pole |
1 | Fronty |
2 | Hromádky |
V našem příkladu tutoriálu REST API budeme implementovat níže uvedená Restful Verbs.
- GET Tutorial - Když klient vyvolá toto Restful API, bude mu dána celá sada Tutoriálů dostupných z webové služby.
- GET Tutorial / Tutorialid - Když klient vyvolá toto Restful API, bude mu udělen název Tutoriálu na základě Tutorialid zaslaného klientem.
- POST Tutorial / Tutorialname - Když klient vyvolá toto Restful API, klient odešle požadavek na vložení Tutorialname. Webová služba poté přidá odeslaný název kurzu do kolekce.
- DELETE Tutorial / Tutorialid- Když klient vyvolá toto Restful API, klient odešle žádost o odstranění názvu tutoriálu na základě Tutorialid. Webová služba poté odstraní zadaný název kurzu ze sbírky.
Postupujme podle níže uvedených kroků v tomto výukovém programu RESTful API, abychom vytvořili naše první webové služby RESTful, které provádějí výše uvedenou implementaci.
Krok 1) Prvním krokem je vytvoření prázdné webové aplikace Asp.Net. V aplikaci Visual Studio 2013 klikněte na možnost nabídky Soubor-> Nový projekt.
Jakmile kliknete na možnost Nový projekt, Visual Studio vám poté poskytne další dialogové okno pro výběr typu projektu a poskytnutí nezbytných podrobností o projektu. To je vysvětleno v dalším kroku tohoto tutoriálu RESTful API
Krok 2) V tomto kroku
- Nejprve vyberte webovou šablonu C # webové služby RESTful webové aplikace ASP.NET. Projekt musí být tohoto typu, aby bylo možné vytvořit projekt webových služeb. Výběrem této možnosti Visual Studio poté provede nezbytné kroky k přidání požadovaných souborů, které jsou vyžadovány jakoukoli webovou aplikací.
- Pojmenujte svůj projekt, který v našem případě dostal název „Webservice.REST“.
- Poté zajistěte umístění, kde budou uloženy soubory projektu.
Po dokončení uvidíte soubor projektu vytvořený v Průzkumníku řešení v sadě Visual Studio 2013.
Krok 3) Dalším krokem je vytvoření souboru webové služby, který bude mít webovou službu RESTful
- Nejprve klepněte pravým tlačítkem myši na soubor projektu, jak je znázorněno níže
- V tomto kroku
- Klepněte pravým tlačítkem na soubor projektu
- Vyberte možnost „Přidat-> nová položka“.
V dialogovém okně, které se zobrazí, musíte provést následující
- Zvolte možnost služby WCF (povoleno Ajaxem) - Vyberte soubor tohoto typu, způsobí to, že Visual Studio přidá nějaký základní kód, který pomůže vytvořit webovou službu RESTful. WCF znamená Windows Communication Foundation. WCF je knihovna pro aplikace různých platforem nebo stejné platformy pro komunikaci přes různé protokoly, jako jsou TCP, HTTP, HTTPS. Ajax je v zásadě asynchronní JavaScript a XML. AJAX umožňuje asynchronní aktualizaci webových stránek výměnou malého množství dat se serverem v zákulisí.
- Dále zadejte název služby, která je v našem případě TutorialService.
- Nakonec kliknutím na tlačítko Přidat přidejte službu do řešení.
Krok 4) Dalším krokem je skutečně provést změnu konfigurace, která umožní tomuto projektu dokončit práci s webovými službami RESTful. To vyžaduje provedení změny v souboru s názvem Web.config . Tento soubor se objeví ve stejném okně jako soubor projektu Webservice. Soubor Web.config obsahuje všechny konfigurace, díky nimž webová aplikace funguje tak, jak má. Prováděná změna ve skutečnosti umožňuje aplikaci odesílat a přijímat data jako čistou webovou službu RESTful.
- Kliknutím na soubor Web.config otevřete kód
- Najděte řádek
- Změňte řádek na
Krok 5) Dalším krokem v tomto výukovém programu RESTful API je přidání našeho kódu pro implementaci. Veškerý níže uvedený kód musí být zapsán do souboru TutorialService.svc
- Prvním bitem je přidání kódu představujícího naše data, která budou použita v našem programu. Budeme tedy mít seznam řetězcových proměnných s hodnotami „Arrays“, „Queues“ a „Stacks“. To bude představovat název výukových programů dostupný prostřednictvím naší hostující webové služby.
namespace Webservice.REST{[ServiceContract(Namespace = "")][AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowedpublic class TutorialService{private static Listlst = new List (new String[] {"Arrays","Queues","Stacks"});
Krok 6) Dále definujeme kód pro naši metodu GET. Tento kód bude také umístěn ve stejném souboru TutorialService.svc. Tento kód se spustí, kdykoli zavoláme službu z našeho prohlížeče.
K naplnění níže uvedeného scénáře bude použita níže uvedená metoda
- Pokud uživatel chce seznam všech dostupných výukových programů, bude k dosažení tohoto cíle nutné napsat následující kód.
[WebGet(UriTemplate="/Tutorial")]public String GetAllTutorial(){int count = 1st.Count;String TutorialList = "";for (int i = 0; i < count; i++)TutorialList = TutorialList + lst[i] + ",";return TutorialList;}
Vysvětlení kódu: -
- První řádek kódu je nejdůležitější. Používá se k definování toho, jak můžeme tuto metodu volat pomocí adresy URL. Pokud je tedy odkaz na naši webovou službu http: // localhost: 52645 / TutorialService.svc a pokud k adrese URL připojíme '/ Tutorial' jako http: // localhost: 52645 / TutorialService.svc / Tutorial , výše uvedený kód bude vyvolána. Atribut 'WebGet' je parametr, který umožňuje, aby tato metoda byla metodou RESTful, takže ji lze vyvolat pomocí slovesa GET.
- Tato část kódu slouží k procházení našeho seznamu řetězců v proměnné „lst“ a vrácení všech do volajícího programu.
Krok 7) Níže uvedený kód zajišťuje, že pokud dojde ke volání GET do služby Tutorial s ID tutoriálu, vrátí by odpovídající název kurzu na základě ID tutoriálu.
[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")]public String GetTutorialbyID(String Tutorialid){int pid;Int32.TryParse(Tutorialid, out pid);return lst[pid];}
Vysvětlení kódu: -
- První řádek kódu je nejdůležitější. Používá se k definování toho, jak můžeme tuto metodu volat pomocí adresy URL. Pokud je tedy odkaz na naši webovou službu http: // localhost: 52645 / TutorialService.svc a pokud k adrese URL připojíme řetězec „/ Tutorial / {Tutorialid}“, mohli bychom webovou službu volat jako http: //localhost:52645/TutorialService.svc/Tutorial/1 jako příklad. Webová služba by pak musela vrátit název výukového programu, který měl ID výukového programu # 1.
- Tato část kódu se používá k vrácení "názvu kurzu", který má ID kurzu předané webové metodě.
- Ve výchozím nastavení je třeba si uvědomit, že vše, co je předáno na adresu URL v prohlížeči, je řetězec.
- Ale musíte si uvědomit, že index do našeho seznamu musí být celé číslo, takže přidáváme potřebný kód, který nejprve převede Tutorialid na Integer a poté jej použije pro přístup k pozici indexu v našem seznamu a
- Poté odpovídajícím způsobem vraťte hodnotu volajícímu programu.
Krok 8) Dalším krokem je napsání kódu pro naši metodu POST. Tato metoda bude vyvolána, kdykoli chceme přidat hodnotu řetězce do našeho seznamu kurzů pomocí metody POST. Pokud byste například chtěli přidat název výukového programu „Testování softwaru“, budete muset použít metodu POST.
Vysvětlení kódu: -
- První řádek je atribut 'WebInvoke', který byl připojen k naší metodě. To umožňuje vyvolání metody prostřednictvím volání POST. Atribut RequestFormat a ResponseFormat musí být zmíněn jako JSON, protože při odesílání hodnot do webové služby RESTFul musí být hodnoty v tomto formátu.
- Druhý řádek kódu se používá k přidání hodnoty řetězce předaného prostřednictvím volání POST do našeho existujícího seznamu řetězců výukového programu.
Krok 9) Nakonec přidáme naši metodu pro zpracování operace DELETE. Tato metoda bude vyvolána, kdykoli chceme odstranit existující hodnotu řetězce z našeho seznamu kurzů pomocí metody DELETE.
[WebInvoke(Method = "DELETE", RequestFormat = WebMessageFormat.Ison,UriTemplate = "/Tutorial/{Tutorialid}", ResponseFormat = WebMessageFormat.Json,BodyStyle = WebMessageBodyStyle.Wrapped)]public void DeleteTutorial(String Tutorialid){int pid;Int32.TryParse(Tutorialid, out pid);1st.RemoveAt(pid);}
Vysvětlení kódu: -
- První řádek je atribut 'WebInvoke', který byl připojen k naší metodě. To umožňuje vyvolání metody prostřednictvím volání POST. Atribut RequestFormat a ResponseFormat musí být zmíněn jako JSON, protože při odesílání hodnot do webové služby RESTFul musí být hodnoty v tomto formátu. Všimněte si, že parametr Method je nastaven na „DELETE“. To znamená, že kdykoli vydáme sloveso DELETE, bude vyvolána tato metoda.
- Druhý řádek kódu se používá k převzetí Tutorialid odeslaného prostřednictvím volání DELETE a následnému odstranění tohoto ID z našeho seznamu. (Funkce Int32 v kódu se používá k převodu ID kurzu z řetězcové proměnné na celé číslo).
Spuštění první klidné webové služby
Nyní, když jsme ve výše uvedené části vytvořili celou naši webovou službu. Podívejme se, jak můžeme spustit výukovou službu, aby ji bylo možné vyvolat z libovolného klienta.
Chcete-li spustit webovou službu, postupujte podle následujících kroků
Krok 1) Klikněte pravým tlačítkem na soubor projektu - Webservice.REST
Krok 2) Vyberte možnost nabídky „Nastavit jako StartUp projekt“. Tím zajistíte spuštění tohoto projektu, když Visual Studio spustí celé řešení
Krok 3) Dalším krokem je spuštění samotného projektu. Nyní v závislosti na výchozím prohlížeči nainstalovaném v systému se vedle tlačítka spuštění v sadě Visual Studio objeví příslušný název prohlížeče. V našem případě se zobrazuje Google Chrome. Stačí kliknout na toto tlačítko.
Výstup:-
Když je projekt spuštěn, můžete přejít do své sekce TutorialService.svc / Tutorial a získáte níže uvedený výstup.
Ve výše uvedeném výstupu
- Vidíte, že prohlížeč vyvolává sloveso 'GET' a ve webové službě provádí metodu 'GetAllTutorial'. Tento modul se používá k zobrazení všech výukových programů vystavených naší webovou službou.
Testování vaší první klidné webové služby
Ve výše uvedené části jsme již viděli, jak pomocí prohlížeče spustit sloveso 'GET' a vyvolat 'GetAllTutorial.'
- Nyní použijeme prohlížeč k provedení následujícího scénáře použití.
GET Tutorial / Tutorialid - Když klient vyvolá toto Restful API, bude mu udělen název Tutoriálu na základě Tutorialid zaslaného klientem
Ve svém prohlížeči připojte řetězec / 1 za výukové slovo do adresy URL. Pokud stisknete tlačítko Enter, dostanete níže uvedený výstup
Nyní uvidíte výstup Queues, který ve skutečnosti odpovídá číslu 1 v našem seznamu Tutorial Strings. To znamená, že metoda 'GetTutorialbyID' je nyní vyvolána z naší Webové služby. Ukazuje také, že hodnota 1 se úspěšně předává prostřednictvím prohlížeče naší webové službě a naší metodě, a proto v prohlížeči dostáváme správnou odpovídající hodnotu „Fronty“.
- Dále pojďme využít naši webovou službu provedením níže uvedeného scénáře. K tomu je třeba nainstalovat nástroj s názvem „Fiddler“, což je bezplatný nástroj ke stažení z webu.
POST Tutorial / Tutorialname - Když klient vyvolá toto Restful API, klient odešle požadavek na vložení Tutorialname. Webová služba poté přidá odeslaný název kurzu do kolekce.
Spusťte nástroj Filddler a proveďte následující kroky;
- Přejděte do sekce skladatel. Slouží k vytváření požadavků, které lze odeslat na libovolný web
aplikace.
- Ujistěte se, že typ požadavku je „POST“ a je zasažena správná adresa URL, která by v našem případě měla být http: // localhost: 52645 / TutorialService.svc / Tutorial
- Ujistěte se, že je typ obsahu označen jako application / json. Nezapomeňte, že naše metoda požadavku POST v naší webové službě přijímá pouze data stylu json, takže musíme zajistit, aby to bylo zadáno, když posíláme požadavek do naší aplikace.
- Nakonec musíme zadat naše údaje. Nezapomeňte, že naše metoda pro POST přijímá parametr s názvem 'str.' Tady tedy specifikujeme, že chceme do naší kolekce názvů výukových programů přidat hodnotu nazvanou „Stromy“ a zajistit, aby byla označena názvem proměnné str.
Nakonec stačí kliknout na tlačítko Spustit v houslistovi. Tím odešlete požadavek na webovou službu POST datové "stromy" do naší webové služby.
Nyní, když procházíme URL výukového programu a zobrazíme všechny řetězce v našem výukovém seznamu, uvidíte také hodnotu „Stromů“. To ukazuje, že požadavek POST na webovou službu byl úspěšně proveden a že byl úspěšně přidán do našeho výukového seznamu.
- Dále pojďme využít naši webovou službu provedením níže uvedeného scénáře. K tomu také musíme použít nástroj houslista
DELETE Tutorial / Tutorialid- Když klient vyvolá toto Restful API, klient odešle žádost o odstranění názvu tutoriálu na základě Tutorialid. Webová služba poté odstraní zadaný název kurzu ze sbírky.
Spusťte nástroj Filddler a proveďte následující kroky
- Přejděte do sekce skladatel. Slouží k vytváření požadavků, které lze odeslat na libovolný web
aplikace.
- Ujistěte se, že typ požadavku je „ODSTRANIT“ a je zasažena správná adresa URL, která by v našem případě měla být http: // localhost: 52645 / TutorialService.svc / Tutorial . Ujistěte se, že ID, které se používá k odstranění řetězce v seznamu odeslaném prostřednictvím adresy URL jako parametru. V našem příkladu REST posíláme 1, takže tímto odstraníme 2. prvek v naší kolekci, což je „Fronty“.
Nakonec stačí kliknout na tlačítko Spustit v houslistovi. Tím odešlete webové službě požadavek na VYMAZÁNÍ datových „front“ naší webové službě.
Když nyní procházíme URL výukového programu a zobrazíme všechny řetězce v našem výukovém seznamu, všimnete si, že hodnota „Fronty“ již není k dispozici.
To ukazuje, že požadavek DELETE na webovou službu byl úspěšně proveden. Prvek v indexu 1 v našem seznamu výukových řetězců byl úspěšně odstraněn.
souhrn
- REST znamená REpresentational State Transfer. REST se používá k vytváření webových služeb, které jsou lehké, udržovatelné a škálovatelné.
- Stále více aplikací přechází na architekturu Restful. Je to proto, že v současné době používá mobilní zařízení a širší škálu aplikací, které se přesouvají do cloudu, mnoho lidí.
- Hlavními aspekty REST jsou prostředky, které se nacházejí na serveru, a slovesa GET, POST, PUT a DELETE, která lze použít k práci s těmito prostředky.
- Visual Studio and.Net lze použít k vytvoření klidných webových služeb.
- Při testování webových služeb pro POST a PUT musíte použít jiný nástroj s názvem fiddler, který lze použít k odeslání požadavku POST a PUT na server.