RESTful Web Services Tutorial: Vad är REST API med exempel

Vad är Restful Web Services?

Vilsamma webbtjänster är en lätt, underhållbar och skalbar tjänst som bygger på REST-arkitekturen. Restful Web Service, exponera API från din applikation på ett säkert, enhetligt, tillståndslöst sätt för den anropande klienten. Den anropande klienten kan utföra fördefinierade operationer med hjälp av tjänsten Restful. Det underliggande protokollet för REST är HTTP. REST står för REpresentational State Transfer.

RESTful nyckelelement

REST webbtjänster har verkligen kommit långt sedan starten. 2002 hade webbkonsortiet släppt definitionen av WSDL- och SOAP-webbtjänster. Detta utgjorde standarden för hur webbtjänster implementeras.

2004 släppte webbkonsortiet också definitionen av en ytterligare standard som heter RESTful. Under de senaste åren har denna standard blivit ganska populär. Och används av många av de populära webbplatserna runt om i världen som inkluderar Facebook och Twitter.

REST är ett sätt att komma åt resurser som finns i en viss miljö. Du kan till exempel ha en server som kan vara värd för viktiga dokument eller bilder eller videor. Alla dessa är exempel på resurser. Om en klient, säg en webbläsare, behöver någon av dessa resurser, måste den skicka en begäran till servern för att få tillgång till dessa resurser. Nu definierar REST-tjänster ett sätt på hur dessa resurser kan nås.

Nyckelelementen i en RESTful implementering är följande:

  1. Resurser – Det första nyckelelementet är själva resursen. Låt anta att en webbapplikation på en server har register över flera anställda. Låt oss anta att webbapplikationens URL är https://demo.guru99.com. Nu för att få tillgång till en anställd rekordresurs via REST-tjänster kan man utfärda kommandot https://demo.guru99.com/employee/1 – Det här kommandot säger åt webbservern att ange uppgifterna om den anställde vars anställdsnummer är 1.
  2. Begär verb – Dessa beskriver vad du vill göra med resursen. En webbläsare utfärdar ett GET-verb för att instruera den slutpunkt som den vill hämta data. Det finns dock många andra verb tillgängliga inklusive saker som POST, PUT och DELETE. Så i fallet med exemplet https://demo.guru99.com/employee/1 , webbläsaren utfärdar faktiskt ett GET Verb eftersom den vill få information om personalposten.
  3. Begär rubriker – Detta är ytterligare instruktioner som skickas med begäran. Dessa kan definiera vilken typ av svar som krävs eller behörighetsdetaljerna.
  4. Begäran kropp – Data skickas med begäran. Data skickas normalt i begäran när en POST-förfrågan görs till REST-webbtjänsterna. I ett POST-anrop berättar klienten faktiskt för REST-webbtjänsterna att den vill lägga till en resurs till servern. Följaktligen skulle förfrågningsorganet ha detaljerna om den resurs som krävs för att läggas till servern.
  5. Svarsorgan – Det här är huvuddelen av svaret. Så i vårt RESTful API-exempel, om vi skulle fråga webbservern via begäran https://demo.guru99.com/employee/1 , kan webbservern returnera ett XML-dokument med alla uppgifter om den anställde i svarsorganet.
  6. Svarsstatuskoder – Dessa koder är de allmänna koder som returneras tillsammans med svaret från webbservern. Ett exempel är koden 200 som normalt returneras om det inte finns något fel när ett svar returneras till klienten.

Vilsamma metoder

Diagrammet nedan visar mestadels alla verb (POST, GET, PUT och DELETE) och ett REST API-exempel på vad de skulle betyda.

Låt oss anta att vi har en RESTful webbtjänst är definierad på platsen. https://demo.guru99.com/employee . När klienten gör en begäran till den här webbtjänsten kan den ange vilket som helst av de normala HTTP-verben GET, POST, DELETE och PUT. Nedan är vad som skulle hända om respektive verb skickades av klienten.

  1. POST – Detta skulle användas för att skapa en ny medarbetare med hjälp av webbtjänsten RESTful
  2. – Detta skulle användas för att få en lista över alla anställda som använder webbtjänsten RESTful
  3. SÄTTA – Detta skulle användas för att uppdatera alla anställda som använder RESTful webbtjänst
  4. RADERA – Detta skulle användas för att radera alla anställda som använder RESTful-tjänsterna

Låt oss ta en titt från ett perspektiv av bara en enda skiva. Låt oss säga att det fanns ett anställningsrekord med anställningsnumret 1.

Följande åtgärder skulle ha sina respektive betydelser.

  1. POST – Detta skulle inte vara tillämpligt eftersom vi hämtar data från anställd 1 som redan är skapad.
  2. – Detta skulle användas för att få information om den anställde med anställningsnummer som 1 med hjälp av RESTful webbtjänst
  3. SÄTTA – Detta skulle användas för att uppdatera uppgifterna om den anställde med anställningsnummer som 1 med hjälp av RESTful webbtjänst
  4. RADERA – Detta används för att radera uppgifterna om den anställde med anställdsnummer som 1

Vilsamma metoder

Varför vilsam

Restful blev oftast populär på grund av följande skäl:

1. Heterogena språk och miljöer – Detta är en av de grundläggande orsakerna som är desamma som vi har sett för TVÅL också.

  • Det gör att webbapplikationer som är byggda på olika programmeringsspråk kan kommunicera med varandra
  • Med hjälp av Restful-tjänster kan dessa webbapplikationer finnas i olika miljöer, vissa kan vara på Windows, och andra kan vara på Linux.

Men i slutändan, oavsett vilken miljö det är, ska slutresultatet alltid vara detsamma som att de ska kunna prata med varandra. Roliga webbtjänster erbjuder denna flexibilitet till applikationer som bygger på olika programmeringsspråk och plattformar för att prata med varandra.

Bilden nedan ger ett exempel på en webbapplikation som har ett krav på att prata med andra applikationer som Facebook, Twitter och Google.

Om nu en klientapplikation skulle fungera med sajter som Facebook, Twitter, etc. skulle de förmodligen behöva veta vilket språk Facebook, Google och Twitter är byggda på, och även på vilken plattform de är byggda på.

Baserat på detta kan vi skriva gränssnittskoden för vår webbapplikation, men detta kan visa sig vara en mardröm.

Facebook, Twitter och Google exponerar sin funktionalitet i form av Restful webbtjänster. Detta gör att alla klientapplikationer kan anropa dessa webbtjänster via REST.

Behöver vilsam

2. Händelsen av Enheter – Nu för tiden måste allt jobbas på Mobil enheter, oavsett om det är den mobila enheten, bärbara datorer eller till och med bilsystem.

Kan du föreställa dig hur mycket ansträngning det är att försöka koda applikationer på dessa enheter för att kunna prata med vanliga webbapplikationer? Återigen kan Restful API:er göra det här jobbet enklare eftersom som nämnts i punkt nummer 1 behöver du verkligen inte veta vad som är det underliggande lagret för enheten.

3. Äntligen är händelsen i Molnet – Allt flyttar till molnet. Applikationer flyttas långsamt till molnbaserade system som i Azure or Amazon. Azure och Amazon tillhandahålla många API:er baserade på Restful-arkitekturen. Därför måste applikationer nu utvecklas på ett sådant sätt att de görs kompatibla med molnet. Så eftersom alla molnbaserade arkitekturer fungerar på REST-principen, är det mer meningsfullt att webbtjänster programmeras på den REST-baserade arkitekturen för att utnyttja molnbaserade tjänster på bästa sätt.

Rogivande Architecture

En applikation eller arkitektur som anses vara RESTful eller REST-stil har följande egenskaper

1. Tillstånd och funktionalitet delas in i distribuerade resurser – Det betyder att varje resurs ska vara tillgänglig via de vanliga HTTP-kommandona GET, POST, PUT eller DELETE. Så om någon ville hämta en fil från en server borde de kunna utfärda GET-förfrågan och hämta filen. Om de vill lägga en fil på servern bör de antingen kunna utfärda POST- eller PUT-begäran. Och slutligen, om de ville ta bort en fil från servern, kan de utfärda begäran om DELETE.

2. Arkitekturen är klient/server, tillståndslös, skiktad och stöder cachning

  • Klient-server är den typiska arkitekturen där servern kan vara webbservern som är värd för applikationen, och klienten kan vara lika enkel som webbläsaren.
  • Stateless betyder att applikationens tillstånd inte bibehålls i REST. Om du till exempel tar bort en resurs från en server med kommandot DELETE kan du inte förvänta dig att raderingsinformationen ska skickas till nästa begäran.

För att säkerställa att resursen raderas, skulle du behöva utfärda GET-begäran. GET-begäran skulle användas för att först få alla resurser på servern. Därefter skulle man behöva se om resursen faktiskt raderades.

ROLIGA principer och begränsningar

REST-arkitekturen är baserad på några egenskaper som utvecklas nedan. Alla RESTful-webbtjänster måste uppfylla nedanstående egenskaper för att den ska kunna kallas RESTful. Dessa egenskaper är också kända som designprinciper som måste följas när man arbetar med RESTful-baserade tjänster.

  1. RESTFul Client-Server

    ROLIGA principer och begränsningar

Detta är det mest grundläggande kravet för en REST-baserad arkitektur. Det betyder att servern kommer att ha en RESTful webbtjänst som skulle tillhandahålla den nödvändiga funktionaliteten till klienten. Klienten skickar en begäran till webbtjänsten på servern. Servern skulle antingen avvisa begäran eller följa och ge ett adekvat svar till klienten.

  1. Statslös

Begreppet tillståndslös innebär att det är upp till klienten att se till att all nödvändig information tillhandahålls till servern. Detta krävs så att servern kan behandla svaret på rätt sätt. Servern ska inte upprätthålla någon form av information mellan förfrågningar från klienten. Det är en mycket enkel oberoende fråga-svar-sekvens. Klienten ställer en fråga, servern svarar på den på rätt sätt. Kunden kommer att ställa en annan fråga. Servern kommer inte ihåg det tidigare frågesvarsscenariot och kommer att behöva svara på den nya frågan oberoende.

  1. Cache

ROLIGA principer och begränsningar

Cache-konceptet är till för att hjälpa till med problemet med statslösa som beskrevs i den sista punkten. Eftersom varje serverklientbegäran är oberoende till sin natur, kan klienten ibland be servern om samma begäran igen. Detta trots att den redan hade bett om det tidigare. Denna begäran kommer att gå till servern och servern kommer att ge ett svar. Detta ökar trafiken över nätverket. Cachen är ett koncept implementerat på klienten för att lagra förfrågningar som redan har skickats till servern. Så om samma begäran ges av klienten, istället för att gå till servern, skulle den gå till cachen och hämta den information som krävs. Detta sparar mängden fram och tillbaka nätverkstrafik från klienten till servern.

  1. System i lager

Konceptet med ett lagersystem är att vilket ytterligare lager som helst som ett mellanprogramlager kan infogas mellan klienten och den faktiska servern som är värd för RESTFul webbtjänst (mellanprogramlagret är där all affärslogik skapas. Detta kan vara en extra tjänst skapat som klienten kan interagera med innan den ringer till webbtjänsten.). Men införandet av detta lager måste vara transparent så att det inte stör interaktionen mellan klienten och servern.

  1. Gränssnitt/Enhetligt kontrakt

Detta är den underliggande tekniken för hur RESTful webbtjänster ska fungera. RESTful fungerar i princip på HTTP-webblagret och använder nedanstående nyckelverb för att arbeta med resurser på servern

  • POST – För att skapa en resurs på servern
  • GET – För att hämta en resurs från servern
  • PUT – För att ändra tillståndet för en resurs eller för att uppdatera den
  • DELETE – För att ta bort eller ta bort en resurs från servern

Skapa din första Restful-webbtjänst i ASP.NET

Nu i denna REST API-handledning kommer vi att lära oss hur man skapar en Restful webbtjänst i ASP.NET:

Webbtjänster kan skapas på en mängd olika språk. Många integrerade utvecklingsmiljöer kan användas för att skapa REST-baserade tjänster.

I detta RESTful API-exempel kommer vi att skapa vår REST-applikation i .Net med Visual Studio. I vårt exempel, för Restful webbtjänster, kommer vi att emulera följande REST-tjänstexempel.

Vi kommer att ha en Restful webbtjänst som kommer att fungera på nedanstående datauppsättning.

Nedanstående datauppsättning representerar ett REST API-exempel på att ha ett företag som exponerar de handledningar de har baserat på Tutorialid.

Tutorialid TutorialName
0 arrayer
1 köer
2 Stacks

I vårt REST API handledningsexempel kommer vi att implementera nedanstående Restful Verbs.

  1. Hämta handledning – När en klient anropar detta Restful API kommer de att få hela uppsättningen handledningar som är tillgängliga från webbtjänsten.
  2. Hämta handledning/Tutorialid – När en klient anropar detta Restful API, kommer de att få Tutorial-namnet baserat på Tutorialid som skickats av klienten.
  3. POST Handledning/Tutorialnamn – När en klient anropar denna Restful API kommer klienten att skicka en begäran om att infoga ett självstudienamn. Webbtjänsten lägger sedan till det inlämnade handledningsnamnet till samlingen.
  4. DELETE Tutorial/Tutorialid– När en klient anropar denna Restful API kommer klienten att skicka en begäran om att ta bort ett Tutorialnamn baserat på Tutorialid. Webbtjänsten kommer sedan att ta bort det inlämnade handledningsnamnet från samlingen.

Låt oss följa stegen nedan i denna RESTful API-handledning för att skapa våra första RESTful-webbtjänster, som utför ovanstående implementering.

Hur du skapar din första vilsamma webbtjänst

Steg 1) Skapa nytt projekt.
Det första steget är att skapa en tom Asp.Net Webbapplikation. Från Visual Studio 2013, klicka på menyalternativet Arkiv->Nytt projekt.

Skapa vilsam webbtjänst

När du klickar på alternativet Nytt projekt kommer Visual Studio att ge dig en annan dialogruta för att välja typ av projekt och för att ge nödvändiga detaljer om projektet. Detta förklaras i nästa steg i denna RESTful API-handledning

Steg 2) Ange projektnamn och plats.

  1. Se till att först välja RESTful webbtjänster C# webbmall för ASP.NET webbapplikation. Projektet måste vara av denna typ för att skapa webbtjänstprojekt. Genom att välja detta alternativ kommer Visual Studio sedan att utföra de nödvändiga stegen för att lägga till nödvändiga filer som krävs av alla webbaserade applikationer.
  2. Ge ditt projekt ett namn som i vårt fall har getts som "Webservice.REST".
  3. Se sedan till att ange en plats där projektfilerna kommer att lagras.

Skapa vilsam webbtjänst

När du är klar kommer du att se projektfilen som skapats i din lösningsutforskare i Visual Studio 2013.

Skapa vilsam webbtjänst

Steg 3) Skapa webbtjänstfilen.
Nästa steg är att skapa webbtjänstfilen som kommer att ha webbtjänsten RESTful

  1. Först Högerklicka på projektfilen som visas nedan

Skapa vilsam webbtjänst

  1. I detta steg
    1. Högerklicka på projektfilen
    2. Välj alternativet "Lägg till->nytt objekt."

Skapa vilsam webbtjänst

I dialogrutan som visas måste du utföra följande

  1. Välj alternativet WCF Service (Ajax-aktiverad) – Välj en fil av denna typ, det orsakar Visual studio att lägga till lite grundläggande kod som hjälper en att skapa en RESTful webbtjänst. WCF står för Windows Kommunikation Foundation. WCF är ett bibliotek för applikationer av olika plattformar eller samma plattform för att kommunicera över de olika protokollen som TCP, HTTP, HTTPS. Ajax är i grunden asynkront JavaScript och XML. AJAX tillåter webbsidor att uppdateras asynkront genom att små mängder data utbyts med servern bakom kulisserna.
  2. Ge sedan ett namn för tjänsten som är TutorialService i vårt fall.
  3. Klicka slutligen på knappen Lägg till för att lägga till tjänsten i lösningen.

Skapa vilsam webbtjänst

Steg 4) Gör en konfiguration.
Nästa steg är att faktiskt göra en konfigurationsändring för att detta projekt ska kunna slutföra arbetet med RESTful webbtjänster. Detta kräver att du gör en ändring i filen som kallas web.config. Den här filen visas i samma fönster som Webservice-projektfilen. Filen Web.config innehåller alla konfigurationer som gör att webbapplikationen fungerar som den ska. Ändringen som görs tillåter faktiskt applikationen att skicka och ta emot data som en ren RESTful webbtjänst.

  1. Klicka på filen Web.config för att öppna koden

Skapa vilsam webbtjänst

  1. Hitta linjen

Skapa vilsam webbtjänst

  1. Ändra linjen till

Skapa vilsam webbtjänst

Steg 5) Lägg till vår kod för implementering.
Nästa steg i denna RESTful API-handledning är att lägga till vår kod för implementering. All nedan nämnda kod måste skrivas i filen TutorialService.svc

  1. Den första biten är att lägga till kod för att representera vår data som kommer att användas i vårt program. Så vi kommer att ha en lista med strängvariabler med värden på "Arrays", "Queue" och "Stacks". Detta kommer att representera tutorialnamnet som är tillgängligt via vår webbtjänst.

Skapa vilsam webbtjänst

namespace Webservice.REST
{
	[ServiceContract(Namespace = "")]
	[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed
	public class TutorialService
	{
		private static List<String> lst = new List<String>
		(new String[] {"Arrays","Queues","Stacks"});

Steg 6) Definiera koden för vår GET-metod.
Därefter kommer vi att definiera koden för vår GET-metod. Den här koden kommer också att finnas i samma TutorialService.svc-fil. Denna kod kommer att köras när vi ringer tjänsten från vår webbläsare.

Metoden nedan kommer att användas för att uppfylla det nedan nämnda scenariot

  • Om en användare vill ha en lista över alla tillgängliga handledningar, måste koden nedan skrivas för att göra detta.

Skapa vilsam webbtjänst

[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;
}

Kodförklaring:-

  1. Den första raden i koden är den viktigaste. Den används för att definiera hur vi kan anropa denna metod via en URL. Så om länken till vår webbtjänst är http://localhost:52645/TutorialService.svc och om vi lägger till '/Tutorial' till URL:en som http://localhost:52645/TutorialService.svc/Tutorial , kommer ovanstående kod att anropas. Attributet för 'WebGet' är en parameter som tillåter denna metod att vara en RESTful-metod så att den kan anropas via GET-verbet.
  2. Denna kodsektion används för att gå igenom vår lista med strängar i variabeln 'lst' och returnera alla till det anropande programmet.

Steg 7) Returnera utgången.
Koden nedan säkerställer att om ett GET-anrop görs till handledningstjänsten med ett handlednings-id, så skulle det returnera motsvarande handledningsnamn baserat på handlednings-id.

Skapa vilsam webbtjänst

[WebGet (UriTemplate = "/Tutorial/{Tutorialid}")]

public String GetTutorialbyID(String Tutorialid)
{
	int pid;
	Int32.TryParse(Tutorialid, out pid);
	return lst[pid];
}

Kodförklaring:-

  1. Den första raden i koden är den viktigaste. Den används för att definiera hur vi kan anropa denna metod via en URL. Så om länken till vår webbtjänst är http://localhost:52645/TutorialService.svc och om vi lägger till '/Tutorial/{Tutorialid}' till webbadressen, då skulle vi kunna anropa webbtjänsten som http://localhost:52645/TutorialService.svc/Tutorial/1 som ett exempel. Webbtjänsten skulle då behöva returnera handledningsnamnet som hade handlednings-id #1.
  2. Det här avsnittet av koden används för att returnera "Tutorial name" som har Tutorial-id:t skickat till webbmetoden.
  • Som standard är det som måste komma ihåg att allt som skickas till webbadressen i webbläsaren är en sträng.
  • Men du måste komma ihåg att indexet till vår lista måste vara ett heltal, så vi lägger till den nödvändiga koden för att först konvertera Tutorialid till ett heltal och sedan använda det för att komma åt indexpositionen i vår lista och
  • Returnera sedan värdet till det anropande programmet.

Steg 8) Skriv koden för POST-metoden.
Nästa steg är att skriva upp koden för vår POST-metod. Denna metod kommer att anropas när vi vill lägga till ett strängvärde till vår lista över handledningar via POST-metoden. Om du till exempel vill lägga till självstudienamnet "Programvarutestning" måste du använda POST-metoden.

Skapa vilsam webbtjänst

Kodförklaring:-

  1. Den första raden är 'WebInvoke'-attributet som har kopplats till vår metod. Detta gör att metoden kan anropas via POST-anropet. Attributen RequestFormat och ResponseFormat måste nämnas som JSON, eftersom när man lägger upp värden till en RESTFul webbtjänst måste värdena vara i detta format.
  2. Den andra raden med kod används för att lägga till strängvärdet som skickas via POST-anropet till vår befintliga lista med handledningssträngar.

Steg 9) Lägg till metod för att hantera DELETE-operationen.
Slutligen kommer vi att lägga till vår metod för att hantera DELETE-operationen. Denna metod kommer att anropas när vi vill ta bort ett befintligt strängvärde från vår lista över handledningar via DELETE-metoden.

Skapa vilsam webbtjänst

[WebInvoke(Method = "DELETE", RequestFormat = WebMessageFormat.Json,
	UriTemplate = "/Tutorial/{Tutorialid}", ResponseFormat = WebMessageFormat.Json,
	BodyStyle = WebMessageBodyStyle.Wrapped)]
	
public void DeleteTutorial(String Tutorialid)
{
	int pid;
	Int32.TryParse(Tutorialid, out pid);
	1st.RemoveAt(pid);
}

Kodförklaring:-

  1. Den första raden är 'WebInvoke'-attributet som har kopplats till vår metod. Detta gör att metoden kan anropas via POST-anropet. Attributen RequestFormat och ResponseFormat måste nämnas som JSON, eftersom när man lägger upp värden till en RESTFul webbtjänst måste värdena vara i detta format. Observera att metodparametern ställs in på "DELETE". Detta betyder att varje gång vi utfärdar verbet DELETE kommer denna metod att anropas.
  2. Den andra raden med kod används för att ta det Tutorialid som skickas via DELETE-anropet och sedan radera det ID:t från vår lista. (De Int32 funktion i kod används för att konvertera handlednings-ID från en strängvariabel till ett heltal).

Kör din första Restful-webbtjänst

Nu när vi har skapat hela vår webbtjänst i avsnittet ovan. Låt oss se hur vi kan köra Tutorial-tjänsten så att den kan anropas från vilken klient som helst.

För att köra webbtjänsten, följ stegen nedan

Steg 1) Högerklicka på projektfilen – Webservice.REST

Kör Restful Web Service

Steg 2) Välj menyalternativet "Set as StartUp Project". Detta kommer att säkerställa att det här projektet körs när Visual Studio kör hela lösningen

Kör Restful Web Service

Steg 3) Nästa steg är att driva själva projektet. Nu beroende på vilken standardwebbläsare som är installerad på systemet, kommer lämpligt webbläsarnamn att komma bredvid körknappen i Visual Studio. I vårt fall har vi det Google Chrome dyker upp. Klicka bara på den här knappen.

Kör Restful Web Service

Produktion:-

När projektet har körts kan du bläddra till din TutorialService.svc/Tutorial-sektion, så får du utdata nedan.

Kör Restful Web Service

I utgången ovan,

  • Du kan se att webbläsaren anropar verbet 'GET' och kör 'GetAllTutorial'-metoden i webbtjänsten. Denna modul används för att visa alla handledningar som exponeras av vår webbtjänst.

Testar din första Restful-webbtjänst

I avsnittet ovan har vi redan sett hur man använder webbläsaren för att köra 'GET'-verbet och anropa 'GetAllTutorial'.

  1. Låt oss nu använda webbläsaren för att utföra följande användningsfallsscenario.

GET Tutorial/Tutorialid – När en klient anropar detta Restful API kommer de att få Tutorial-namnet baserat på Tutorialid som skickats av klienten

I din webbläsare lägger du till strängen /1 efter handledningsordet i URL:en. Om du trycker på enter-knappen får du utdata nedan

Testar Restful Web Service

Nu kommer du att se utdata från köer som faktiskt motsvarar nummer 1 i vår lista med handledningssträngar. Det betyder att metoden 'GetTutorialbyID' nu anropas från vår webbtjänst. Det visar också att värdet på 1 skickas framgångsrikt via webbläsaren till vår webbtjänst och till vår metod och det är därför vi får det korrekta motsvarande värdet på "köer" i webbläsaren.

  1. Låt oss sedan konsumera vår webbtjänst genom att utföra scenariot nedan. För detta måste du installera verktyget som heter "Fiddler” som är ett gratis nedladdningsbart verktyg från webbplatsen.

POST Tutorial/Tutorialname – När en klient anropar detta Restful API kommer klienten att skicka in en begäran om att infoga ett Tutorialnamn. Webbtjänsten lägger sedan till det inlämnade handledningsnamnet till samlingen.

Kör Filddler-verktyget och utför stegen nedan;

  1. Gå till kompositörsektionen. Detta används för att skapa förfrågningar som kan skickas till vilken webbapplikation som helst.
  2. Se till att förfrågningstypen är "POST" och att rätt URL träffas, vilket i vårt fall borde vara det http://localhost:52645/TutorialService.svc/Tutorial
  3. Se till att Content-Type är markerad som application/json. Kom ihåg att vår POST-förfrågningsmetod i vår webbtjänst endast accepterar json-stildata så vi måste se till att detta anges när vi skickar en förfrågan till vår applikation.
  4. Slutligen måste vi ange våra uppgifter. Kom ihåg att vår metod för POST accepterar en parameter som kallas 'str.' Så här specificerar vi att vi vill lägga till ett värde som kallas "Träd" till vår samling av handledningsnamn och se till att det är taggat till str-variabelns namn.

Slutligen, klicka bara på Execute-knappen i Fiddler. Detta kommer att skicka en begäran till webbtjänsten att POSTA data "Träd" till vår webbtjänst.

Testar Restful Web Service

Nu, när vi bläddrar till handlednings-URL för att visa alla strängar i vår handledningslista, kommer du nu att se att värdet på "Träd" också är närvarande. Detta visar att POST-begäran till webbtjänsten har utförts och att den har lagts till i vår handledningslista.

Testar Restful Web Service

  1. Låt oss sedan konsumera vår webbtjänst genom att utföra scenariot nedan. För detta måste vi också använda spelmansverktyget

DELETE Tutorial/Tutorialid- När en klient anropar detta Restful API kommer klienten att skicka en begäran om att ta bort ett Tutorialnamn baserat på Tutorialid. Webbtjänsten kommer sedan att ta bort det inlämnade handledningsnamnet från samlingen.

Kör Filddler-verktyget och utför stegen nedan

  1. Gå till kompositörsektionen. Detta används för att skapa förfrågningar som kan skickas till vilken webbapplikation som helst.
  2. Se till att förfrågningstypen är "DELETE" och att rätt URL träffas, vilket i vårt fall borde vara det http://localhost:52645/TutorialService.svc/Tutorial. Se till att id:t som används för att ta bort en sträng i listan skickas via URL:en som en parameter. I vårt REST-exempel skickar vi 1 så detta tar bort 2:annd element i vår samling som är "köer".

Slutligen, klicka bara på Execute-knappen i Fiddler. Detta kommer att skicka en begäran till webbtjänsten att TA BORT data "köer" till vår webbtjänst.

Testar Restful Web Service

När vi nu bläddrar till handledningsadressen för att visa alla strängar i vår handledningslista, kommer du att märka att värdet på "köer" inte längre finns.

Detta visar att DELETE-begäran till webbtjänsten har utförts. Elementet vid indexnummer 1 i vår lista över handledningssträngar har raderats.

Testar Restful Web Service

Sammanfattning

  • REST står för REpresentational State Transfer. REST används för att bygga webbtjänster som är lätta, underhållbara och skalbara till sin natur.
  • Fler och fler applikationer flyttar till arkitekturen Restful. Detta beror på att det finns många människor som nu använder mobila enheter och ett större utbud av applikationer som flyttar till molnet.
  • De viktigaste aspekterna av REST är resurserna som finns på servern och verben GET, POST, PUT och DELETE, som kan användas för att arbeta med dessa resurser.
  • Visual Studio and.Net kan användas för att skapa Restful webbtjänster.
  • När Testning webbtjänster för POST och PUT måste du använda ett annat verktyg som heter fiddler som kan användas för att skicka POST- och PUT-förfrågan till servern.