Čo sú to oddychové webové služby?
Restful Web Services je ľahká, udržiavateľná a škálovateľná služba postavená na architektúre REST. Oddychová webová služba, vystavte volajúceho klienta API z vašej aplikácie bezpečným, jednotným a bezstavovým spôsobom. Volajúci klient môže vykonávať preddefinované operácie pomocou služby Restful. Základný protokol pre REST je HTTP. REST je skratka pre REpresentational State Transfer.
V tomto výučbe REST API sa naučíte -
- RESTful kľúčové prvky
- Upokojujúce metódy
- Prečo pokojne
- Pokojná architektúra
- Princípy a obmedzenia RestFul
- Vytvorte svoju prvú pokojnú webovú službu v ASP.NET
- Spustenie vašej prvej pokojnej webovej služby
- Testovanie vašej prvej pokojnej webovej služby
RESTful kľúčové prvky
Webové služby REST prešli od svojho vzniku skutočne dlhou cestou. V roku 2002 konzorcium Web vydalo definíciu webových služieb WSDL a SOAP. To tvorilo štandard spôsobu implementácie webových služieb.
V roku 2004 webové konzorcium tiež zverejnilo definíciu dodatočného štandardu s názvom RESTful. Za posledných pár rokov sa tento štandard stal veľmi populárnym. Používajú ho mnohé populárne webové stránky z celého sveta, medzi ktoré patria Facebook a Twitter.
REST je spôsob prístupu k zdrojom, ktoré sa nachádzajú v konkrétnom prostredí. Môžete mať napríklad server, ktorý by mohol byť hostiteľom dôležitých dokumentov alebo obrázkov alebo videí. To všetko je príklad zdrojov. Ak klient, povedzme, webový prehľadávač potrebuje ktorýkoľvek z týchto zdrojov, musí na server odoslať žiadosť o prístup k týmto prostriedkom. Služby REST teraz definujú spôsob prístupu k týmto zdrojom.
Kľúčové prvky implementácie RESTful sú tieto:
-
Zdroje - Prvým kľúčovým prvkom je samotný zdroj. Predpokladajme, že webová aplikácia na serveri má záznamy niekoľkých zamestnancov. Predpokladajme, že adresa URL webovej aplikácie je http://demo.guru99.com . Teraz, aby sme mohli získať prístup k zdroju záznamu zamestnanca prostredníctvom služieb REST, je možné vydať príkaz http://demo.guru99.com/employee/1 - tento príkaz povie webovému serveru, aby poskytol podrobnosti o zamestnancovi, ktorého číslo zamestnanca je 1.
-
Slovesá požiadavky - popisujú, čo chcete so zdrojom urobiť. Prehliadač vydá sloveso GET, aby dal koncovému bodu pokyn, aby získal údaje. Existuje však veľa ďalších slovies vrátane vecí ako POST, PUT a DELETE. Takže v prípade príkladu http://demo.guru99.com/employee/1 webový prehliadač skutočne vydáva sloveso GET, pretože chce získať podrobnosti o zázname zamestnanca.
-
Hlavičky požiadavky - Toto sú ďalšie pokyny zaslané so žiadosťou. Môžu definovať typ požadovanej odpovede alebo podrobnosti autorizácie.
-
Telo žiadosti - s požiadavkou sa odosielajú údaje. Dáta sa zvyčajne odosielajú v žiadosti, keď sa vykoná požiadavka POST do webových služieb REST. Pri hovore POST klient v skutočnosti povie webovým službám REST, že chce na server pridať prostriedok. Telo žiadosti by teda malo mať podrobnosti o zdroji, ktorý je potrebné pridať na server.
-
Telo odpovede - Toto je hlavný text odpovede. Takže v našom príklade RESTful API, ak by sme mali dotazovať na webový server prostredníctvom požiadavky http://demo.guru99.com/employee/1 , webový server by mohol vrátiť dokument XML so všetkými podrobnosťami zamestnanca v odpovedi Telo.
-
Kódy stavu odpovede - Tieto kódy sú všeobecné kódy, ktoré sa vracajú spolu s odpoveďou z webového servera. Príkladom je kód 200, ktorý sa normálne vráti, ak pri vrátení odpovede klientovi nedôjde k chybe.
Upokojujúce metódy
Nasledujúci diagram zobrazuje väčšinou všetky slovesá (POST, GET, PUT a DELETE) a príklad REST API, čo by znamenali.
Predpokladajme, že na danom mieste je definovaná webová služba RESTful. http://demo.guru99.com/employee . Keď klient urobí akúkoľvek požiadavku na túto webovú službu, môže určiť ktorékoľvek z bežných slovies HTTP GET, POST, DELETE a PUT. Nižšie je uvedené, čo by sa stalo, keby klient poslal príslušné slovesá.
- POST - Použije sa na vytvorenie nového zamestnanca pomocou webovej služby RESTful
- ZÍSKAŤ - Použije sa na získanie zoznamu všetkých zamestnancov používajúcich webovú službu RESTful
- PUT - Toto by sa použilo na aktualizáciu všetkých zamestnancov pomocou webovej služby RESTful
- ODSTRÁNIŤ - Toto by sa použilo na odstránenie všetkých zamestnancov využívajúcich služby RESTful
Pozrime sa na to z pohľadu jediného záznamu. Povedzme, že existoval záznam zamestnanca s počtom zamestnancov 1.
Nasledujúce akcie by mali svoj význam.
- POST - Toto by nebolo použiteľné, pretože načítame údaje zamestnanca 1, ktoré sú už vytvorené.
- ZÍSKAŤ - Použije sa na získanie podrobností zamestnanca so zamestnancom č. 1 pomocou webovej služby RESTful
- PUT - Použije sa na aktualizáciu podrobností zamestnanca so zamestnancom č. 1 pomocou webovej služby RESTful
- ODSTRÁNIŤ - Používa sa na odstránenie údajov o zamestnancovi so zamestnancom č. 1
Prečo pokojne
Upokojujúci sa väčšinou stali obľúbenými z nasledujúcich dôvodov:
- Heterogénne jazyky a prostredia - Toto je jeden zo základných dôvodov, ktoré sú rovnaké ako v prípade protokolu SOAP.
- Umožňuje vzájomnú komunikáciu webových aplikácií, ktoré sú postavené na rôznych programovacích jazykoch
- Pomocou služieb Restful môžu tieto webové aplikácie sídliť v rôznych prostrediach, niektoré môžu byť v systéme Windows a iné v systéme Linux.
Ale nakoniec, bez ohľadu na to, aké je prostredie, konečný výsledok by mal byť vždy rovnaký, aby boli schopní navzájom sa rozprávať. Uvoľnené webové služby ponúkajú túto flexibilitu aplikáciám postaveným na rôznych programovacích jazykoch a platformách, ktoré umožňujú vzájomnú komunikáciu.
Na nasledujúcom obrázku je uvedený príklad webovej aplikácie, ktorá vyžaduje komunikáciu s inými aplikáciami, ako sú Facebook, Twitter a Google.
Keby teraz klientská aplikácia musela pracovať so stránkami ako Facebook, Twitter atď., Pravdepodobne by musela vedieť, v akom jazyku sú postavené Facebook, Google a Twitter a tiež na akej platforme sú postavené.
Na základe toho môžeme napísať kód rozhrania pre našu webovú aplikáciu, ale mohlo by sa to stať nočnou morou.
Facebook, Twitter a Google vystavujú svoje funkcie v podobe oddychových webových služieb. Toto umožňuje akejkoľvek klientskej aplikácii volať tieto webové služby prostredníctvom REST.
- Udalosť zariadení - V dnešnej dobe musí všetko fungovať na mobilných zariadeniach, či už ide o mobilné zariadenie, notebooky alebo dokonca automobilové systémy.
Viete si predstaviť množstvo úsilia vyskúšať a kódovať aplikácie na týchto zariadeniach na rozhovor s bežnými webovými aplikáciami? Restful API môžu túto prácu zjednodušiť, pretože ako je uvedené v bode č. 1, skutočne nemusíte vedieť, čo je podkladová vrstva pre zariadenie.
- Konečne je to udalosť Cloudu - Všetko sa posúva do cloudu. Aplikácie sa pomaly presúvajú do cloudových systémov, napríklad v Azure alebo Amazon. Azure a Amazon poskytujú veľa rozhraní API založených na architektúre Restful. Preto je teraz potrebné vyvíjať aplikácie tak, aby boli kompatibilné s cloudom. Pretože všetky cloudové architektúry fungujú na princípe REST, je logickejšie, aby boli webové služby programované na architektúre založenej na službách REST, aby čo najlepšie využívali cloudové služby.
Pokojná architektúra
Aplikácia alebo architektúra považovaná za RESTful alebo štýl REST má nasledujúce vlastnosti
- Stav a funkčnosť sú rozdelené na distribuované zdroje - To znamená, že každý zdroj by mal byť prístupný prostredníctvom bežných príkazov HTTP GET, POST, PUT alebo DELETE. Ak by teda niekto chcel získať súbor zo servera, mal by byť schopný vydať žiadosť GET a získať súbor. Ak chcú vložiť súbor na server, mali by byť schopní vydať požiadavku POST alebo PUT. A nakoniec, ak chcú odstrániť súbor zo servera, vydajú požiadavku na ODSTRÁNENIE.
- Architektúra je klient / server, bez štátnej príslušnosti, vrstvená a podporuje ukladanie do pamäte cache -
- Klient-server je typická architektúra, kde serverom môže byť webový server hostiaci aplikáciu a klient môže byť rovnako jednoduchý ako webový prehliadač.
- Bez štátnej príslušnosti znamená, že stav aplikácie nie je v REST zachovaný.
Napríklad ak odstránite prostriedok zo servera pomocou príkazu DELETE, nemôžete očakávať, že informácie o odstránení budú odovzdané ďalšej požiadavke.
Aby ste sa uistili, že zdroj je vymazaný, budete musieť vydať požiadavku GET. Požiadavka GET by sa použila na prvé získanie všetkých prostriedkov na serveri. Potom by bolo potrebné zistiť, či bol zdroj skutočne odstránený.
Princípy a obmedzenia RESTFul
Architektúra REST je založená na niekoľkých charakteristikách, ktoré sú rozpracované nižšie. Akákoľvek webová služba RESTful musí vyhovovať nižšie uvedeným charakteristikám, aby mohla byť nazývaná RESTful. Tieto charakteristiky sú tiež známe ako princípy návrhu, ktoré je potrebné dodržiavať pri práci so službami založenými na RESTful.
- Klient-server RESTFul
Toto je najzákladnejšia požiadavka na architektúre založenej na REST. To znamená, že server bude mať webovú službu RESTful, ktorá by klientovi poskytovala požadované funkcie. Klient pošle požiadavku webovej službe na serveri. Server by buď odmietol požiadavku, alebo vyhovel a klientovi poskytol adekvátnu odpoveď.
- Bezstavový
Koncept bez štátnej príslušnosti znamená, že je na klientovi, aby zabezpečil, že všetky požadované informácie sú poskytované serveru. Toto je potrebné, aby server mohol zodpovedajúcim spôsobom spracovať odpoveď. Server by nemal udržiavať akékoľvek informácie medzi požiadavkami od klienta. Je to veľmi jednoduchá nezávislá sekvencia otázok a odpovedí. Klient položí otázku, server na ňu zodpovedajúcim spôsobom odpovie. Klient položí ďalšiu otázku. Server si nebude pamätať predchádzajúci scenár otázok a odpovedí a bude musieť odpovedať na novú otázku nezávisle.
- Cache
Koncept Cache má pomôcť pri riešení problému bez štátnej príslušnosti, ktorý bol popísaný v poslednom bode. Pretože každá požiadavka na klienta servera je svojou povahou nezávislá, niekedy môže klient požiadať server o rovnakú požiadavku znova. A to aj napriek tomu, že o to už v minulosti požiadalo. Táto požiadavka pôjde na server a server odpovie. To zvyšuje prenos v sieti. Vyrovnávacia pamäť je koncept implementovaný v klientovi na ukladanie požiadaviek, ktoré už boli odoslané na server. Takže ak klient zadá rovnakú požiadavku, namiesto toho, aby šiel na server, prešiel by do medzipamäte a získal požadované informácie. Tým sa ušetrí množstvo prichádzajúcich a odchádzajúcich sieťových prenosov z klienta na server.
- Vrstvený systém
Koncept vrstveného systému spočíva v tom, že medzi klienta a skutočný server, ktorý je hostiteľom webovej služby RESTFul, je možné vložiť akúkoľvek ďalšiu vrstvu, ako je vrstva middleware. (Na vrstve middleware sa vytvára všetka obchodná logika. Môže to byť služba navyše. vytvorené, s ktorými by klient mohol komunikovať skôr, ako uskutoční hovor s webovou službou.). Úvod tejto vrstvy však musí byť transparentný, aby nenarúšal interakciu medzi klientom a serverom.
- Rozhranie / Jednotná zmluva
Toto je základná technika, ako by mali fungovať webové služby RESTful. Program RESTful v zásade funguje na webovej vrstve HTTP a na prácu so zdrojmi na serveri používa nižšie uvedené slovesá
- POST - Vytvorenie prostriedku na serveri
- GET - Na získanie zdroja zo servera
- PUT - Zmena stavu zdroja alebo jeho aktualizácia
- ODSTRÁNIŤ - Odstráni alebo odstráni prostriedok zo servera
Vytvorte svoju prvú pokojnú webovú službu v ASP.NET
Teraz v tomto výučbe rozhrania REST API sa naučíme, ako vytvoriť webovú službu Restful v ASP.NET:
Webové služby je možné vytvárať v rôznych jazykoch. Na vytvorenie služieb založených na REST možno použiť veľa integrovaných vývojových prostredí.
V tomto príklade rozhrania RESTful API vytvoríme našu aplikáciu REST v .Net pomocou sady Visual Studio. V našom príklade pre webové služby Restful napodobníme nasledujúci príklad služby REST.
Budeme mať webovú službu Restful, ktorá bude pracovať na nižšie uvedenej množine údajov.
Nasledujúca množina údajov predstavuje príklad rozhrania REST API spoločnosti, ktorá zverejňuje príručku, ktorú majú na základe príručky.
Tutorialid | TutorialName |
0 | Polia |
1 | Fronty |
2 | Stohy |
V našom príklade tutoriálu REST API sa chystáme implementovať nižšie uvedené Restful Verbs.
- Výukový program GET - Keď klient vyvolá toto Restful API, bude mať k dispozícii celú sadu výučbových programov dostupných z webovej služby.
- GET Tutorial / Tutorialid - Keď klient vyvolá toto Restful API, bude mu pridelený názov Tutoriálu na základe Tutorialid zaslaného klientom.
- POST Tutorial / Tutorialname - Keď klient vyvolá toto Restful API, odošle žiadosť o vloženie Tutorialname. Webová služba potom pridá zadaný názov výučby do zbierky.
- DELETE Tutorial / Tutorialid- Keď klient vyvolá toto Restful API, klient odošle žiadosť o odstránenie názvu tutoriálu na základe Tutorialid. Webová služba potom odstráni zadaný názov výučby zo zbierky.
Postupujme podľa nasledujúcich krokov v tomto výučbe RESTful API, aby sme vytvorili naše prvé webové služby RESTful, ktoré vykonávajú vyššie uvedenú implementáciu.
Krok 1) Prvým krokom je vytvorenie prázdnej webovej aplikácie Asp.Net. Vo Visual Studio 2013 kliknite na možnosť ponuky Súbor-> Nový projekt.
Po kliknutí na možnosť Nový projekt vám Visual Studio poskytne ďalšie dialógové okno pre výber typu projektu a pre poskytnutie potrebných podrobností o projekte. To je vysvetlené v ďalšom kroku tohto tutoriálu RESTful API
Krok 2) V tomto kroku
- Najskôr si vyberte webovú šablónu RESTful webových služieb C # webovej aplikácie ASP.NET. Projekt musí byť tohto typu, aby vznikol projekt webových služieb. Výberom tejto možnosti Visual Studio potom vykoná potrebné kroky na pridanie požadovaných súborov, ktoré sú vyžadované ľubovoľnou webovou aplikáciou.
- Pomenujte svoj projekt, ktorý v našom prípade dostal názov „Webservice.REST“.
- Potom nezabudnite uviesť umiestnenie, kde budú uložené súbory projektu.
Po dokončení sa zobrazí súbor projektu vytvorený v prehľadávači riešení v Visual Studio 2013.
Krok 3) Ďalším krokom je vytvorenie súboru webovej služby, ktorý bude mať webovú službu RESTful
- Prvý Kliknite pravým tlačidlom myši na súbor projektu, ako je uvedené nižšie
- V tomto kroku
- Pravým tlačidlom myši kliknite na súbor projektu
- Vyberte možnosť „Pridať-> nová položka“.
V zobrazenom dialógovom okne musíte vykonať nasledovné
- Vyberte možnosť služby WCF (s povoleným Ajaxom) - vyberte súbor tohto typu, čo spôsobí, že Visual Studio pridá nejaký základný kód, ktorý pomôže vytvoriť webovú službu RESTful. WCF je skratka pre Windows Communication Foundation. WCF je knižnica pre aplikácie rôznych platforiem alebo rovnakej platformy na komunikáciu prostredníctvom rôznych protokolov, ako sú TCP, HTTP, HTTPS. Ajax je v podstate asynchrónny JavaScript a XML. AJAX umožňuje asynchrónne aktualizovať webové stránky výmenou malého množstva údajov so serverom v zákulisí.
- Ďalej pomenujte službu, ktorá je v našom prípade TutorialService.
- Nakoniec kliknite na tlačidlo Pridať a pridajte službu do riešenia.
Krok 4) Ďalším krokom je skutočne vykonať zmenu konfigurácie, ktorá umožní tomuto projektu dokončiť prácu s webovými službami RESTful. To si vyžaduje vykonanie zmeny v súbore s názvom Web.config . Tento súbor sa zobrazuje v rovnakom okne ako súbor projektu Webservice. Súbor Web.config obsahuje všetky konfigurácie, vďaka ktorým webová aplikácia funguje tak, ako má. Vykonaná zmena v skutočnosti umožňuje aplikácii odosielať a prijímať údaje ako čistú webovú službu RESTful.
- Kliknutím na súbor Web.config otvorte kód
- Nájdite riadok
- Zmeňte riadok na
Krok 5) Ďalším krokom v tomto výučbe rozhrania RESTful API je pridanie nášho kódu na implementáciu. Všetky nižšie uvedené kódy musia byť napísané v súbore TutorialService.svc
- Prvým bitom je pridanie kódu, ktorý predstavuje naše údaje, ktoré sa použijú v našom programe. Budeme teda mať zoznam reťazcových premenných s hodnotami „Arrays“, „Queues“ a „Stacks“. Toto bude predstavovať názov tutoriálov dostupný prostredníctvom našej hostiteľskej webovej 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) Ďalej definujeme kód pre našu metódu GET. Tento kód bude tiež umiestnený v rovnakom súbore TutorialService.svc. Tento kód sa spustí, kedykoľvek zavoláme na službu z nášho prehliadača.
Na splnenie nižšie uvedeného scenára sa použije nasledujúca metóda
- Ak chce používateľ zoznam všetkých dostupných tutoriálov, bude na to potrebné napísať nasledujúci 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;}
Vysvetlenie kódu: -
- Prvý riadok kódu je najdôležitejší. Používa sa na definovanie toho, ako môžeme túto metódu zavolať prostredníctvom adresy URL. Takže ak je odkaz na našu webovú službu http: // localhost: 52645 / TutorialService.svc a ak k adrese URL pripojíme „/ Tutorial“ ako http: // localhost: 52645 / TutorialService.svc / Tutorial , vyššie uvedený kód bude vyvolané. Atribút 'WebGet' je parameter, ktorý umožňuje, aby táto metóda bola metódou RESTful, takže ju možno vyvolať prostredníctvom slovesa GET.
- Táto časť kódu slúži na to, aby sme prešli našim zoznamom reťazcov v premennej „lst“ a vrátili ich všetky do volajúceho programu.
Krok 7) Nižšie uvedený kód zaisťuje, že ak sa uskutoční volanie služby GET do služby Tutorial s ID Tutorial, potom vráti zodpovedajúci názov Tutoriálu na základe ID Tutorial.
[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")]public String GetTutorialbyID(String Tutorialid){int pid;Int32.TryParse(Tutorialid, out pid);return lst[pid];}
Vysvetlenie kódu: -
- Prvý riadok kódu je najdôležitejší. Používa sa na definovanie toho, ako môžeme túto metódu zavolať prostredníctvom adresy URL. Ak je teda odkaz na našu webovú službu http: // localhost: 52645 / TutorialService.svc a ak k adrese URL pripojíme reťazec „/ Tutorial / {Tutorialid}“, mohli by sme webovú službu zavolať ako http: //localhost:52645/TutorialService.svc/Tutorial/1 ako príklad. Webová služba by potom musela vrátiť názov výučby, ktorý mal ID výučby # 1.
- Táto časť kódu sa používa na vrátenie názvu „výučby“, ktorý má ID výučby odovzdané webovej metóde.
- Predvolene si treba pamätať, že všetko, čo sa v prehliadači odovzdá adrese URL, je reťazec.
- Musíte si však uvedomiť, že index do nášho zoznamu musí byť celé číslo, takže pridávame potrebný kód, ktorý najskôr prevedie Tutorialid na celé číslo a potom ho použije na prístup k pozícii indexu v našom zozname a
- Potom zodpovedajúcim spôsobom vráťte hodnotu volajúcemu programu.
Krok 8) Ďalším krokom je napísanie kódu pre našu metódu POST. Táto metóda sa vyvolá vždy, keď chceme do nášho zoznamu Tutoriálov pridať hodnotu reťazca pomocou metódy POST. Napríklad, ak chcete pridať názov výučby „Testovanie softvéru“, budete musieť použiť metódu POST.
Vysvetlenie kódu: -
- Prvý riadok je atribút 'WebInvoke', ktorý je pripojený k našej metóde. To umožňuje vyvolanie metódy prostredníctvom volania POST. Atribúty RequestFormat a ResponseFormat musia byť uvedené ako JSON, pretože pri odosielaní hodnôt do webovej služby RESTFul musia byť hodnoty v tomto formáte.
- Druhý riadok kódu sa používa na pridanie hodnoty reťazca odovzdaného prostredníctvom volania POST do nášho existujúceho zoznamu reťazcov výučby.
Krok 9) Nakoniec pridáme našu metódu na spracovanie operácie DELETE. Táto metóda sa vyvolá vždy, keď chceme vymazať existujúcu hodnotu reťazca z nášho zoznamu tutoriálov pomocou metódy 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);}
Vysvetlenie kódu: -
- Prvý riadok je atribút 'WebInvoke', ktorý je pripojený k našej metóde. To umožňuje vyvolanie metódy prostredníctvom volania POST. Atribúty RequestFormat a ResponseFormat musia byť uvedené ako JSON, pretože pri odosielaní hodnôt do webovej služby RESTFul musia byť hodnoty v tomto formáte. Upozorňujeme, že parameter Method je nastavený na hodnotu „DELETE“. To znamená, že kedykoľvek vydáme sloveso DELETE, táto metóda sa vyvolá.
- Druhý riadok kódu slúži na prevzatie Tutorialid odoslaného prostredníctvom volania DELETE a následné odstránenie tohto ID z nášho zoznamu. (Funkcia Int32 v kóde sa používa na prevod ID výučby z reťazcovej premennej na celé číslo).
Spustenie vašej prvej pokojnej webovej služby
Teraz, keď sme vo vyššie uvedenej časti vytvorili celú našu webovú službu. Pozrime sa, ako môžeme spustiť službu Tutorial tak, aby ju bolo možné vyvolať z ľubovoľného klienta.
Ak chcete spustiť webovú službu, postupujte podľa nasledujúcich krokov
Krok 1) Kliknite pravým tlačidlom myši na súbor projektu - Webservice.REST
Krok 2) Vyberte možnosť ponuky „Nastaviť ako projekt po spustení“. Tým sa zabezpečí spustenie tohto projektu, keď Visual Studio spustí celé riešenie
Krok 3) Ďalším krokom je spustenie samotného projektu. Teraz, v závislosti od predvoleného prehľadávača nainštalovaného v systéme, sa príslušný názov prehliadača zobrazí vedľa tlačidla spustenia v Visual Studio. V našom prípade sa zobrazuje prehliadač Google Chrome. Stačí kliknúť na toto tlačidlo.
Výkon:-
Keď je projekt spustený, môžete prejsť do sekcie TutorialService.svc / Tutorial a získate výstup uvedený nižšie.
Vo vyššie uvedenom výstupe
- Môžete vidieť, že prehliadač vyvoláva sloveso „GET“ a vo webovej službe vykonáva metódu „GetAllTutorial“. Tento modul sa používa na zobrazenie všetkých výukových programov vystavených našou webovou službou.
Testovanie vašej prvej pokojnej webovej služby
V predchádzajúcej časti sme už videli, ako používať prehliadač na vykonanie slovesa „GET“ a na vyvolanie programu „GetAllTutorial“.
- Poďme teraz pomocou prehliadača vykonať nasledujúci scenár použitia.
GET Tutorial / Tutorialid - Keď klient vyvolá toto Restful API, dostane názov Tutoriálu na základe Tutorialidu zaslaného klientom
Vo svojom prehliadači pripojte reťazec / 1 za slovo výučby v adrese URL. Ak stlačíte tlačidlo Enter, získate výstup uvedený nižšie
Teraz uvidíte výstup frontov, ktorý skutočne zodpovedá číslu 1 v našom zozname Tutorial Strings. To znamená, že metóda „GetTutorialbyID“ je teraz vyvolaná z našej webovej služby. Ukazuje tiež, že hodnota 1 sa úspešne odovzdáva prostredníctvom prehľadávača našej webovej službe a našej metóde, a preto v prehliadači dostávame správnu zodpovedajúcu hodnotu „frontov“.
- Ďalej spotrebujme našu webovú službu vykonaním nižšie uvedeného scenára. Preto je potrebné nainštalovať nástroj s názvom „Fiddler“, ktorý je bezplatne stiahnuteľným nástrojom z tejto stránky.
POST Tutorial / Tutorialname - Keď klient vyvolá toto Restful API, odošle žiadosť o vloženie Tutorialname. Webová služba potom pridá zadaný názov výučby do zbierky.
Spustite nástroj Filddler a vykonajte nasledujúce kroky;
- Prejdite do sekcie skladateľ. Používa sa na vytváranie požiadaviek, ktoré je možné odoslať na akýkoľvek web
žiadosť.
- Skontrolujte, či je typ žiadosti „POST“ a či sa naráža na správnu adresu URL, ktorá by v našom prípade mala byť http: // localhost: 52645 / TutorialService.svc / Tutorial
- Uistite sa, že je typ obsahu označený ako application / json. Pamätajte, že naša metóda žiadosti POST v našej webovej službe prijíma iba údaje štýlu json, takže musíme zabezpečiť, aby bola táto špecifikovaná, keď odosielame žiadosť do našej aplikácie.
- Nakoniec musíme zadať naše údaje. Pamätajte, že naša metóda pre POST akceptuje parameter s názvom „str.“ Takže tu určujeme, že chceme do našej zbierky názvov tutoriálov pridať hodnotu s názvom „Stromy“ a zabezpečiť, aby bola označená k názvu premennej str.
Nakoniec stačí kliknúť na tlačidlo Spustiť v nástroji pre husle. Toto pošle požiadavku na webovú službu, ABYSTE zverejnili údaje "Stromy" do našej webovej služby.
Teraz, keď prejdeme na adresu URL výučby a zobrazíme všetky reťazce v našom zozname výučby, uvidíte, že je prítomná aj hodnota „Stromy“. To ukazuje, že požiadavka POST na webovú službu bola úspešne vykonaná a že bola úspešne pridaná do nášho zoznamu príručiek.
- Ďalej spotrebujme našu webovú službu vykonaním nižšie uvedeného scenára. Aj na to musíme použiť nástroj fiddler
DELETE Tutorial / Tutorialid- Keď klient vyvolá toto Restful API, klient odošle žiadosť o odstránenie názvu tutoriálu na základe Tutorialid. Webová služba potom odstráni zadaný názov výučby zo zbierky.
Spustite nástroj Filddler a postupujte podľa nasledujúcich krokov
- Prejdite do sekcie skladateľ. Používa sa na vytváranie požiadaviek, ktoré je možné odoslať na akýkoľvek web
žiadosť.
- Skontrolujte, či je typ žiadosti „ODSTRÁNENÉ“ a či sa naráža na správnu adresu URL, ktorá by v našom prípade mala byť http: // localhost: 52645 / TutorialService.svc / Tutorial . Zaistite, aby ID, ktoré sa používa na odstránenie reťazca v zozname odoslanom cez adresu URL ako parameter. V našom príklade REST posielame 1, takže týmto odstránime druhý prvok z našej zbierky, ktorý je „Fronty“.
Nakoniec stačí kliknúť na tlačidlo Execute v nástroji Fiddler. Toto pošle požiadavku na webovú službu, aby VYMAZAL dátové fronty našej webovej službe.
Teraz, keď prejdeme na adresu URL výučby a zobrazíme všetky reťazce v našom zozname výučby, všimnete si, že hodnota „fronty“ už nie je k dispozícii.
To ukazuje, že požiadavka na vymazanie webovej služby bola úspešne vykonaná. Prvok v indexe č. 1 v našom zozname výučbových reťazcov bol úspešne odstránený.
Zhrnutie
- REST je skratka pre REpresentational State Transfer. REST sa používa na vytváranie webových služieb, ktoré majú ľahký, udržiavateľný a škálovateľný charakter.
- Čoraz viac aplikácií prechádza na architektúru Restful. Je to preto, že v súčasnosti využíva mobilné zariadenia a širokú škálu aplikácií, ktoré sa sťahujú do cloudu, veľa ľudí.
- Hlavnými aspektmi REST sú prostriedky, ktoré sa nachádzajú na serveri, a slovesá GET, POST, PUT a DELETE, ktoré možno použiť na prácu s týmito prostriedkami.
- Visual Studio and.Net sa dá použiť na vytvorenie oddychových webových služieb.
- Pri testovaní webových služieb pre POST a PUT musíte použiť iný nástroj s názvom fiddler, pomocou ktorého je možné odoslať požiadavku POST a PUT na server.