RESTful Web Services Tutorial: Wat is REST API met voorbeeld

Wat is Restful Web Services?

Rustgevende webservices is een lichtgewicht, onderhoudbare en schaalbare service die is gebouwd op de REST archistructuur. Restful Web Service, stel de API van uw applicatie op een veilige, uniforme, staatloze manier beschikbaar voor de bellende client. De bellende cliënt kan vooraf gedefinieerde handelingen verrichten operamet behulp van de Restful-service. Het onderliggende protocol voor REST is HTTP. REST staat voor REpresentational State Transfer.

RESTful sleutelelementen

REST-webservices hebben sinds de oprichting echt een lange weg afgelegd. In 2002 had het webconsortium de definitie van WSDL- en SOAP-webservices vrijgegeven. Dit vormde de standaard voor de manier waarop webservices worden geïmplementeerd.

In 2004 bracht het webconsortium ook de definitie uit van een aanvullende standaard genaamd RESTful. De afgelopen jaren is deze standaard behoorlijk populair geworden. En wordt gebruikt door veel van de populaire websites over de hele wereld, waaronder Facebook en Twitter.

REST is een manier om toegang te krijgen tot bronnen die zich in een bepaalde omgeving bevinden. U kunt bijvoorbeeld een server hebben waarop belangrijke documenten, afbeeldingen of video's kunnen worden gehost. Dit zijn allemaal voorbeelden van hulpbronnen. Als een client, bijvoorbeeld een webbrowser, een van deze bronnen nodig heeft, moet hij een verzoek naar de server sturen om toegang te krijgen tot deze bronnen. Nu definieert REST-services een manier waarop deze bronnen toegankelijk zijn.

De belangrijkste elementen van een RESTful-implementatie zijn als volgt:

  1. Bronnen – Het eerste sleutelelement is de hulpbron zelf. Stel dat een webapplicatie op een server records heeft van meerdere medewerkers. Laten we aannemen dat de URL van de webapplicatie is http://demo.guru99.com. Om nu toegang te krijgen tot een werknemersrecordbron via REST-services, kan men de opdracht geven http://demo.guru99.com/employee/1 – Dit commando vertelt de webserver om de details van de werknemer wiens personeelsnummer 1 is.
  2. Vraag werkwoorden aan – Deze beschrijven wat u met de hulpbron wilt doen. Een browser geeft een GET-werkwoord uit om het eindpunt te instrueren dat het gegevens wil ophalen. Er zijn echter nog veel meer werkwoorden beschikbaar, waaronder zaken als POST, PUT en DELETE. Dus in het geval van het voorbeeld http://demo.guru99.com/employee/1 , geeft de webbrowser feitelijk een GET-werkwoord af omdat hij de de wil ophalentails van het personeelsdossier.
  3. Verzoek headers – Dit zijn aanvullende instructies die bij het verzoek worden verzonden. Deze kunnen het vereiste type antwoord of de autorisatie definiërentails.
  4. Verzoektekst – Er worden gegevens meegestuurd met het verzoek. Gegevens worden normaal gesproken in het verzoek verzonden wanneer een POST-verzoek wordt ingediend bij de REST-webservices. Bij een POST-aanroep vertelt de client de REST-webservices feitelijk dat hij een bron aan de server wil toevoegen. De verzoekende instantie zou dus de details van de bron die aan de server moet worden toegevoegd.
  5. Reactie lichaam – Dit is de hoofdtekst van het antwoord. Dus in ons RESTful API-voorbeeld, als we de webserver zouden ondervragen via het verzoek http://demo.guru99.com/employee/1 , retourneert de webserver mogelijk een XML-document met alle details van de werknemer in het Reactieorgaan.
  6. Reactiestatuscodes – Deze codes zijn de algemene codes die samen met het antwoord van de webserver worden geretourneerd. Een voorbeeld is de code 200 die normaal gesproken wordt geretourneerd als er geen fout optreedt bij het retourneren van een antwoord naar de client.

Rustgevende methoden

Het onderstaande diagram toont grotendeels alle werkwoorden (POST, GET, PUT en DELETE) en een REST API-voorbeeld van wat ze zouden betekenen.

Laten we aannemen dat we op de locatie een RESTful-webservice hebben gedefinieerd. http://demo.guru99.com/employee . Wanneer de client een verzoek indient bij deze webservice, kan deze elk van de normale HTTP-werkwoorden GET, POST, DELETE en PUT specificeren. Hieronder ziet u wat er zou gebeuren als de betreffende werkwoorden door de cliënt zouden worden verzonden.

  1. POST – Dit zou worden gebruikt om een ​​nieuwe medewerker aan te maken met behulp van de RESTful-webservice
  2. GET – Dit zou worden gebruikt om een ​​lijst te krijgen van alle werknemers die de RESTful-webservice gebruiken
  3. PUT – Dit zou worden gebruikt om alle medewerkers te updaten die de RESTful-webservice gebruiken
  4. VERWIJDEREN – Dit zou worden gebruikt om alle werknemers te verwijderen die de RESTful-services gebruiken

Laten we eens kijken vanuit het perspectief van slechts één record. Stel dat er een werknemersrecord is met het werknemersnummer 1.

De following acties zouden hun respectievelijke betekenissen hebben.

  1. POST – Dit zou niet van toepassing zijn omdat we gegevens van werknemer 1 ophalen die al zijn aangemaakt.
  2. GET – Dit zou worden gebruikt om de de te krijgentails van de medewerker met medewerkernummer 1 via de RESTful webservice
  3. PUT – Dit zou worden gebruikt om de de bij te werkentails van de medewerker met medewerkernummer 1 via de RESTful webservice
  4. VERWIJDEREN – Dit wordt gebruikt om de de te verwijderentails van de medewerker met medewerkernummer 1

Rustgevende methoden

Waarom rustgevend

Rustgevend werd vooral populair dankzij de following redenen:

1. Heterogeenneoons talen en omgevingen – Dit is een van de fundamentele redenen die dezelfde is als we hebben gezien SOAP .

  • Het zorgt ervoor dat webapplicaties die op verschillende programmeertalen zijn gebouwd, met elkaar kunnen communiceren
  • Met behulp van Restful-services kunnen deze webapplicaties zich in verschillende omgevingen bevinden, sommige zelfs aan Windows, en andere kunnen op Linux draaien.

Maar uiteindelijk, ongeacht de omgeving, moet het eindresultaat altijd hetzelfde zijn: ze moeten met elkaar kunnen praten. Rustgevende webservices bieden deze flexibiliteit om applicaties die op verschillende programmeertalen en platforms zijn gebouwd met elkaar te praten.

De onderstaande afbeelding geeft een voorbeeld van een webapplicatie die moet kunnen communiceren met andere applicaties zoals Facebook, Twitter en Google.

Als een clientapplicatie zou moeten werken met sites als Facebook, Twitter, enz., zouden ze waarschijnlijk moeten weten in welke taal Facebook, Google en Twitter zijn gebouwd, en ook op welk platform ze zijn gebouwd.

Op basis hiervan kunnen we de interfacecode voor onze webapplicatie schrijven, maar dit kan een nachtmerrie blijken te zijn.

Facebook, Twitter en Google stellen hun functionaliteit bloot in de vorm van Restful-webservices. Hierdoor kan elke clienttoepassing deze webservices via REST aanroepen.

Rust nodig

2. De gebeurtenis van Apparaten – Tegenwoordig moet aan alles gewerkt worden Mobile apparaten, of het nu gaat om het mobiele apparaat, de notebooks of zelfs autosystemen.

Kunt u zich voorstellen hoeveel moeite het kost om applicaties op deze apparaten te coderen zodat ze met normale webapplicaties kunnen communiceren? Opnieuw kunnen Restful API's deze taak eenvoudiger maken, omdat je, zoals vermeld in punt nr. 1, echt niet hoeft te weten wat de onderliggende laag voor het apparaat is.

3. Tenslotte is er de gebeurtenis van de Cloud – Alles verhuist naar de cloud. Applicaties verplaatsen zich langzaam naar cloudgebaseerde systemen zoals in Azuur or Amazon. Azuur en Amazon bieden veel API's op basis van de Restful archistructuur. Applicaties moeten nu dusdanig ontwikkeld worden dat ze compatibel zijn met de Cloud. Dus omdat alles Cloud-gebaseerd is archiOmdat deze werken volgens het REST-principe, is het logischer dat webservices worden geprogrammeerd op basis van de REST-services. architectuur om optimaal gebruik te maken van cloudgebaseerde diensten.

Rustgevend Architectuur

Een aanvraag of architectuur die als RESTful of REST-stijl wordt beschouwd, heeft de volgende kenmerkenwing kenmerken

1. Staat en functionaliteit zijn onderverdeeld in gedistribueerde bronnen – Dit betekent dat elke bron toegankelijk moet zijn via de normale HTTP-opdrachten GET, POST, PUT of DELETE. Dus als iemand een bestand van een server wil ophalen, moet hij of zij het GET-verzoek kunnen doen en het bestand kunnen ophalen. Als ze een bestand op de server willen plaatsen, moeten ze het POST- of PUT-verzoek kunnen doen. En ten slotte, als ze een bestand van de server willen verwijderen, kunnen ze het DELETE-verzoek indienen.

2. De architecture is client/server, staatloos, gelaagd en ondersteunt caching

  • Client-server is het typische archiwaarbij de server de webserver kan zijn die de applicatie host, en de client net zo eenvoudig kan zijn als de webbrowser.
  • Stateless betekent dat de status van de applicatie niet behouden blijft in REST. Als u bijvoorbeeld een bron van een server verwijdert met de opdracht DELETE, kunt u niet verwachten dat die verwijderinformatie wordt doorgegeven aan het volgende verzoek.

Om ervoor te zorgen dat de bron wordt verwijderd, moet u het GET-verzoek indienen. Het GET-verzoek zou worden gebruikt om eerst alle bronnen op de server te krijgen. Daarna zou men moeten zien of de bron daadwerkelijk is verwijderd.

RESTful-principes en beperkingen

De rest archiDe structuur is gebaseerd op enkele kenmerken die hieronder worden uitgewerkt. Elke RESTful-webservice moet aan de onderstaande kenmerken voldoen om RESTful te mogen heten. Deze kenmerken staan ​​ook bekend als ontwerpprincipes die moeten worden gevolgd bij het werken met op RESTful gebaseerde services.

  1. RESTful client-server

    RESTful-principes en beperkingen

Dit is de meest fundamentele vereiste van een op REST gebaseerd systeem archistructuur. Het betekent dat de server een RESTful-webservice heeft die de client de vereiste functionaliteit biedt. De client stuurt een verzoek naar de webservice op de server. De server zou het verzoek afwijzen of eraan voldoen en een adequaat antwoord aan de client geven.

  1. stateless

Het concept van stateless betekent dat het aan de client is om ervoor te zorgen dat alle vereiste informatie aan de server wordt verstrekt. Dit is nodig zodat de server het antwoord op de juiste manier kan verwerken. De server mag geen enkele vorm van informatie bijhouden tussen verzoeken van de client. Het is een heel eenvoudige, onafhankelijke vraag-antwoordreeks. De client stelt een vraag, de server beantwoordt deze op passende wijze. De cliënt zal nog een vraag stellen. De server onthoudt het vorige vraag-antwoordscenario niet en zal de nieuwe vraag zelfstandig moeten beantwoorden.

  1. cache

RESTful-principes en beperkingen

Het Cache-concept is bedoeld om te helpen bij het probleem van staatlozen, dat in het laatste punt werd beschreven. Omdat elk serverclientverzoek onafhankelijk van aard is, kan de client de server soms opnieuw om hetzelfde verzoek vragen. Dit terwijl zij er in het verleden al om heeft gevraagd. Dit verzoek gaat naar de server en de server zal een antwoord geven. Hierdoor neemt het verkeer over het netwerk toe. De cache is een concept dat op de client is geïmplementeerd om verzoeken op te slaan die al naar de server zijn verzonden. Dus als hetzelfde verzoek door de client wordt gegeven, gaat deze in plaats van naar de server te gaan, naar de cache en krijgt de vereiste informatie. Dit bespaart de hoeveelheid heen en weer netwerkverkeer van de client naar de server.

  1. Gelaagd systeem

Het concept van een gelaagd systeem is dat elke extra laag, zoals een middleware-laag, kan worden ingevoegd tussen de client en de daadwerkelijke server die de RESTFul-webservice host (de middleware-laag is waar alle bedrijfslogica wordt gemaakt. Dit kan een extra service zijn). gemaakt waarmee de client kan communiceren voordat deze de webservice aanroept.). Maar de introductie van deze laag moet transparant zijn, zodat deze de interactie tussen de client en de server niet verstoort.

  1. Interface/uniform contract

Dit is de onderliggende techniek van hoe RESTful-webservices zouden moeten werken. RESTful werkt in principe op de HTTP-weblaag en gebruikt de onderstaande sleutelwoorden om met bronnen op de server te werken

  • POST – Om een ​​bron op de server aan te maken
  • GET – Om een ​​bron van de server op te halen
  • PUT – Om de status van een hulpbron te wijzigen of bij te werken
  • DELETE – Om een ​​bron van de server te verwijderen of te verwijderen

Creëer uw eerste Restful-webservice in ASP.NET

In deze REST API-tutorial leren we nu hoe u een Restful-webservice in ASP.NET kunt maken:

Webservices kunnen in verschillende talen worden gemaakt. Veel geïntegreerde ontwikkelomgevingen kunnen worden gebruikt om op REST gebaseerde services te creëren.

In dit RESTful API-voorbeeld gaan we onze REST-applicatie in .Net maken met behulp van Visual Studio. In ons voorbeeld gaan we voor Restful-webservices het volgende emulerenwing REST-servicevoorbeeld.

We krijgen een Restful-webservice die werkt op de onderstaande reeks gegevens.

De onderstaande set gegevens vertegenwoordigt een REST API-voorbeeld van het hebben van een bedrijf dat de tutorials openbaar maakt die ze hebben gebaseerd op de Tutorial.

Handleiding Naam van zelfstudie
0 arrays
1 wachtrijen
2 Stacks

In ons REST API-tutorialvoorbeeld gaan we de onderstaande Restful Werkwoorden implementeren.

  1. KRIJG zelfstudie – Wanneer een klant deze Restful API aanroept, krijgt hij de volledige set tutorials die beschikbaar zijn via de webservice.
  2. KRIJG zelfstudie/tutoriallid – Wanneer een klant deze Restful API aanroept, krijgt hij of zij de Tutorial-naam op basis van de Tutorial die door de klant is verzonden.
  3. POST-zelfstudie/zelfstudienaam – Wanneer een client deze Restful API aanroept, zal de client een verzoek indienen om een ​​Tutorialnaam in te voeren. De webservice voegt vervolgens de ingediende Tutorial-naam toe aan de verzameling.
  4. VERWIJDER Tutorial/Tutorialid– Wanneer een klant deze Restful API aanroept, zal de klant een verzoek indienen om een ​​Tutorialnaam te verwijderen op basis van de Tutorial. De webservice verwijdert vervolgens de ingediende Tutorial-naam uit de verzameling.

Laten we de onderstaande stappen in deze RESTful API-tutorial volgen om onze eerste RESTful-webservices te maken, die de bovenstaande implementatie uitvoert.

Hoe u uw eerste rustgevende webservice kunt maken

Stap 1) Nieuw project maken.
De eerste stap is het maken van een leeg bestand Asp.Net Web applicatie. Van Visual Studio 2013, klik op de menuoptie Bestand->Nieuw project.

Creëer een rustgevende webservice

Zodra u op de optie Nieuw project klikt, Visual Studio geeft u dan een nieuw dialoogvenster box voor het kiezen van het type project en het geven van de nodige details van het project. Dit wordt uitgelegd in de volgende stap van deze RESTful API-tutorial

Stap 2) Vul de projectnaam en locatie in.

  1. Zorg ervoor dat u eerst de RESTful-webservices kiest C# websjabloon van ASP.NET-webtoepassing. Het project moet van dit type zijn om een ​​webserviceproject te kunnen maken. Door deze opties te kiezen, Visual Studio zal vervolgens de nodige stappen uitvoeren om de vereiste bestanden toe te voegen die vereist zijn voor elke webgebaseerde applicatie.
  2. Geef een naam voor uw project die in ons geval is gegeven als “Webservice.REST”.
  3. Zorg er vervolgens voor dat u een locatie opgeeft waar de projectbestanden worden opgeslagen.

Creëer een rustgevende webservice

Als u klaar bent, ziet u het projectbestand dat in uw oplossingsverkenner is gemaakt Visual Studio 2013.

Creëer een rustgevende webservice

Stap 3) Maak het webservicebestand.
De volgende stap is het maken van het webservicebestand dat de RESTful-webservice gaat bevatten

  1. Klik eerst met de rechtermuisknop op het projectbestand, zoals hieronder weergegeven

Creëer een rustgevende webservice

  1. In deze stap,
    1. Klik met de rechtermuisknop op het projectbestand
    2. Kies de optie “Toevoegen->nieuw item.”

Creëer een rustgevende webservice

In de dialoog box die verschijnt, moet u de volgende stap uitvoerenwing

  1. Kies de optie WCF Service (Ajax-enabled) – Kies een bestand van dit type, het veroorzaakt de Visual studio om wat basiscode toe te voegen waarmee je een RESTful-webservice kunt maken. WCF staat voor Windows Communicatie Foundation. WCF is een bibliotheek waarmee applicaties van verschillende platforms of hetzelfde platform kunnen communiceren via de verschillende protocollen zoals TCP, HTTP, HTTPS. Ajax is eigenlijk Asynckroniek JavaScript en XML. Met AJAX kunnen webpagina's worden bijgewerktsyncdoor kleine hoeveelheden gegevens uit te wisselen met de server achter de schermen.
  2. Geef vervolgens een naam voor de service, in ons geval TutorialService.
  3. Klik ten slotte op de knop Toevoegen om de service aan de oplossing toe te voegen.

Creëer een rustgevende webservice

Stap 4) Maak een configuratie.
De volgende stap is om daadwerkelijk een configuratiewijziging door te voeren, zodat dit project het werk met RESTful-webservices kan voltooien. Hiervoor moet u een wijziging aanbrengen in het aangeroepen bestand Web.config. Dit bestand verschijnt in hetzelfde venster als het Webservice-projectbestand. Het bestand Web.config bevat alle configuraties die ervoor zorgen dat de webapplicatie naar behoren werkt. Door de wijziging die wordt doorgevoerd, kan de applicatie gegevens verzenden en ontvangen als een pure RESTful-webservice.

  1. Klik op het Web.config-bestand om de code te openen

Creëer een rustgevende webservice

  1. Zoek naar de lijn

Creëer een rustgevende webservice

  1. Verander de regel naar

Creëer een rustgevende webservice

Stap 5) Voeg onze code toe voor implementatie.
De volgende stap in deze RESTful API-tutorial is het toevoegen van onze code voor implementatie. Alle onderstaande code moet in het bestand TutorialService.svc worden geschreven

  1. Het eerste deel is het toevoegen van code om onze gegevens weer te geven die in ons programma zullen worden gebruikt. We krijgen dus een lijst met tekenreeksvariabelen met de waarden "Arrays", "Wachtrijen" en "Stacks". Dit vertegenwoordigt de naam van de tutorials die beschikbaar is via onze hostingwebservice.

Creëer een rustgevende webservice

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"});

Stap 6) Definieer de code voor onze GET-methode.
Vervolgens zullen we de code voor onze GET-methode definiëren. Deze code bevindt zich ook in hetzelfde TutorialService.svc-bestand. Deze code wordt uitgevoerd wanneer we de service vanuit onze browser aanroepen.

De onderstaande methode zal worden gebruikt om het onderstaande scenario te vervullen

  • Als een gebruiker een lijst met alle beschikbare tutorials wil, moet de onderstaande code worden geschreven om dit te bereiken.

Creëer een rustgevende webservice

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

Code-uitleg: -

  1. De eerste regel code is het belangrijkste. Het wordt gebruikt om te definiëren hoe we deze methode via een URL kunnen aanroepen. Dus als de link naar onze webservice staat http://localhost:52645/TutorialService.svc en als we de '/Tutorial' aan de URL toevoegen als http://localhost:52645/TutorialService.svc/Tutorial , wordt de bovenstaande code aangeroepen. Het attribuut van 'WebGet' is een parameter die het mogelijk maakt dat deze methode een RESTful-methode is, zodat deze kan worden aangeroepen via het GET-werkwoord.
  2. Dit codegedeelte wordt gebruikt om onze lijst met strings in de 'lst'-variabele te doorlopen en ze allemaal terug te sturen naar het oproepende programma.

Stap 7) Retourneer de uitvoer.
De onderstaande code zorgt ervoor dat als er een GET-aanroep wordt gedaan naar de Tutorial-service met een Tutorial-ID, deze de overeenkomstige Tutorial-naam retourneert op basis van de Tutorial-ID.

Creëer een rustgevende webservice

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

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

Code-uitleg: -

  1. De eerste regel code is het belangrijkste. Het wordt gebruikt om te definiëren hoe we deze methode via een URL kunnen aanroepen. Dus als de link naar onze webservice staat http://localhost:52645/TutorialService.svc en als we de '/Tutorial/{Tutorialid}' aan de URL toevoegen, kunnen we de webservice aanroepen als http://localhost:52645/TutorialService.svc/Tutorial/1 als voorbeeld. De webservice zou dan de Tutorial-naam moeten retourneren met de Tutorial-id#1.
  2. Dit codegedeelte wordt gebruikt om de 'Tutorialnaam' te retourneren, waarbij de Tutorial-ID wordt doorgegeven aan de webmethode.
  • Wat standaard moet worden onthouden, is dat alles wat aan de URL in de browser wordt doorgegeven, een tekenreeks is.
  • Maar u moet niet vergeten dat de index in onze lijst een geheel getal moet zijn, dus voegen we de benodigde code toe om eerst de Tutorialid naar een geheel getal te converteren en deze vervolgens te gebruiken om toegang te krijgen tot de indexpositie in onze lijst en
  • Stuur vervolgens de waarde dienovereenkomstig terug naar het oproepende programma.

Stap 8) Schrijf de code voor de POST-methode.
De volgende stap is het schrijven van de code voor onze POST-methode. Deze methode wordt aangeroepen wanneer we via de POST-methode een stringwaarde aan onze lijst met tutorials willen toevoegen. Als u bijvoorbeeld de zelfstudienaam 'Software Testing' wilt toevoegen, moet u de POST-methode gebruiken.

Creëer een rustgevende webservice

Code-uitleg: -

  1. De eerste regel is het attribuut 'WebInvoke' dat aan onze methode is gekoppeld. Hierdoor kan de methode worden aangeroepen via de POST-aanroep. Het kenmerk RequestFormat en ResponseFormat moeten worden vermeld als JSON, omdat bij het posten van waarden naar een RESTFul-webservice de waarden in dit formaat moeten zijn.
  2. De tweede coderegel wordt gebruikt om de tekenreekswaarde die via de POST-aanroep is doorgegeven, toe te voegen aan onze bestaande lijst met zelfstudiereeksen.

Stap 9) Methode toevoegen om DELETE af te handelen operatie.
Ten slotte gaan we onze methode toevoegen om DELETE af te handelen operatie. Deze methode wordt aangeroepen wanneer we een bestaande tekenreekswaarde uit onze lijst met zelfstudies willen verwijderen via de DELETE-methode.

Creëer een rustgevende webservice

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

Code-uitleg: -

  1. De eerste regel is het attribuut 'WebInvoke' dat aan onze methode is gekoppeld. Hierdoor kan de methode worden aangeroepen via de POST-aanroep. Het kenmerk RequestFormat en ResponseFormat moeten worden vermeld als JSON, omdat bij het posten van waarden naar een RESTFul-webservice de waarden in dit formaat moeten zijn. Houd er rekening mee dat de Method-parameter wordt ingesteld op 'DELETE'. Dit betekent dat wanneer we het DELETE-werkwoord gebruiken, deze methode wordt aangeroepen.
  2. De tweede coderegel wordt gebruikt om de Tutorialid die via de DELETE-oproep is verzonden, te nemen en vervolgens die ID uit onze lijst te verwijderen. (De Int32 functie in code wordt gebruikt om de Tutorial-ID van een stringvariabele naar een geheel getal te converteren).

Uw eerste Restful-webservice uitvoeren

Nu we onze volledige webservice in de bovenstaande sectie hebben gemaakt. Laten we eens kijken hoe we de Tutorial-service kunnen uitvoeren, zodat deze vanaf elke client kan worden aangeroepen.

Om de webservice uit te voeren, volgt u de onderstaande stappen

Stap 1) Klik met de rechtermuisknop op het projectbestand – Webservice.REST

Rustgevende webservice uitvoeren

Stap 2) Kies de menuoptie 'Instellen als StartUp Project'. Dit zorgt ervoor dat dit project wanneer wordt uitgevoerd Visual Studio beheert de gehele oplossing

Rustgevende webservice uitvoeren

Stap 3) De volgende stap is het project zelf uitvoeren. Afhankelijk van de standaardbrowser die op het systeem is geïnstalleerd, verschijnt de juiste browsernaam naast de knop Uitvoeren Visual Studio. In ons geval hebben we dat wel gedaan Google Chrome showing omhoog. Klik gewoon op deze knop.

Rustgevende webservice uitvoeren

Uitgang: -

Wanneer het project is uitgevoerd, kunt u naar de sectie TutorialService.svc/Tutorial bladeren en krijgt u de onderstaande uitvoer.

Rustgevende webservice uitvoeren

In de bovenstaande uitvoer,

  • U kunt zien dat de browser het werkwoord 'GET' aanroept en de 'GetAllTutorial'-methode in de webservice uitvoert. Deze module wordt gebruikt om alle tutorials weer te geven die door onze webservice worden aangeboden.

Uw eerste Restful-webservice testen

In het bovenstaande gedeelte hebben we al gezien hoe we de browser kunnen gebruiken om het werkwoord 'GET' uit te voeren en de 'GetAllTutorial' aan te roepen.

  1. Laten we nu de browser gebruiken om het volgende uit te voerenwing use-case-scenario.

GET Tutorial/Tutorialid – Wanneer een klant deze Restful API aanroept, krijgt hij of zij de Tutorial-naam op basis van de Tutorial die door de klant is verzonden

Voeg in uw browser de tekenreeks /1 toe na het Tutorial-woord in de URL. Als u op de enter-knop drukt, krijgt u de onderstaande uitvoer

Restful Web Service testen

Nu zul je de uitvoer van wachtrijen zien die feitelijk overeenkomt met nummer 1 in onze lijst met zelfstudiereeksen. Dit betekent dat de methode 'GetTutorialbyID' nu wordt aangeroepen vanuit onze webservice. Het laat ook zien dat de waarde van 1 succesvol via de browser wordt doorgegeven aan onze webservice en aan onze methode en daarom krijgen we de juiste overeenkomstige waarde van “Wachtrijen” in de browser.

  1. Laten we vervolgens onze webservice gebruiken door het onderstaande scenario uit te voeren. Hiervoor moet u de tool genaamd “Fiddler', een gratis downloadbare tool van de site.

POST Tutorial/Tutorialnaam – Wanneer een klant deze Restful API aanroept, zal de klant een verzoek indienen om een ​​Tutorialnaam in te voegen. De webservice voegt vervolgens de ingediende Tutorial-naam toe aan de verzameling.

Voer de Fiddler-tool uit en voer de onderstaande stappen uit;

  1. Ga naar de composer sectie. Hiermee worden verzoeken aangemaakt die in elke webapplicatie kunnen worden ingediend.
  2. Zorg ervoor dat het verzoektype “POST” is en dat de juiste URL wordt geraakt, wat in ons geval zou moeten zijn http://localhost:52645/TutorialService.svc/Tutorial
  3. Zorg ervoor dat het inhoudstype is gemarkeerd als application/json. Houd er rekening mee dat onze POST-verzoekmethode in onze webservice alleen json-stijlgegevens accepteert, dus we moeten ervoor zorgen dat dit wordt gespecificeerd wanneer we een verzoek naar onze applicatie verzenden.
  4. Ten slotte moeten we onze gegevens invoeren. Onthoud dat onze methode voor POST een parameter accepteert met de naam 'str.' Hier specificeren we dus dat we een waarde met de naam “Trees” willen toevoegen aan onze verzameling Tutorial-namen en ervoor willen zorgen dat deze wordt getagd met de naam van de str-variabele.

Klik ten slotte gewoon op de knop Uitvoeren fiddler. Hierdoor wordt een verzoek naar de webservice gestuurd om de gegevens “Trees” naar onze webservice te POSTen.

Restful Web Service testen

Wanneer we nu naar de Tutorial-URL bladeren om alle tekenreeksen in onze Tutorial-lijst weer te geven, ziet u nu dat de waarde van "Trees" ook aanwezig is. Dit toont aan dat het POST-verzoek aan de webservice met succes is uitgevoerd en dat het met succes is toegevoegd aan onze Tutoriallijst.

Restful Web Service testen

  1. Laten we vervolgens onze webservice gebruiken door het onderstaande scenario uit te voeren. Ook hiervoor moeten we de fiddler tools

VERWIJDER Tutorial/Tutorialid - Wanneer een klant deze Restful API aanroept, zal de klant een verzoek indienen om een ​​Tutorialnaam te verwijderen op basis van de Tutorial. De webservice verwijdert vervolgens de ingediende Tutorial-naam uit de verzameling.

Voer de Fiddler-tool uit en voer de onderstaande stappen uit

  1. Ga naar de composer sectie. Hiermee worden verzoeken aangemaakt die in elke webapplicatie kunnen worden ingediend.
  2. Zorg ervoor dat het verzoektype “DELETE” is en dat de juiste URL wordt geraakt, wat in ons geval zou moeten zijn http://localhost:52645/TutorialService.svc/Tutorial. Zorg ervoor dat de id die wordt gebruikt om een ​​string in de lijst te verwijderen, via de URL als parameter wordt verzonden. In ons REST-voorbeeld sturen we 1, dus hierdoor worden de 2 verwijderdnd element in onze collectie, namelijk “Wachtrijen”.

Klik ten slotte gewoon op de knop Uitvoeren fiddler. Hierdoor wordt een verzoek naar de webservice gestuurd om de gegevens “Wachtrijen” naar onze webservice te VERWIJDEREN.

Restful Web Service testen

Wanneer we nu naar de Tutorial-URL bladeren om alle tekenreeksen in onze Tutorial-lijst weer te geven, zult u merken dat de waarde van "Wachtrijen" niet langer aanwezig is.

Dit geeft aan dat het DELETE-verzoek aan de webservice met succes is uitgevoerd. Het element op index nr. 1 in onze lijst met zelfstudiereeksen is met succes verwijderd.

Restful Web Service testen

Samengevat

  • REST staat voor REpresentational State Transfer. REST wordt gebruikt om webservices te bouwen die lichtgewicht, onderhoudbaar en schaalbaar van aard zijn.
  • Steeds meer toepassingen verhuizen naar de Restful archistructuur. Dit komt doordat veel mensen nu mobiele apparaten gebruiken en een grotere verscheidenheid aan applicaties naar de cloud verhuizen.
  • De belangrijkste aspecten van REST zijn de bronnen die zich op de server bevinden en de werkwoorden GET, POST, PUT en DELETE, die kunnen worden gebruikt om met deze bronnen te werken.
  • Visual Studio and.Net kan worden gebruikt om rustgevende webservices te creëren.
  • . Testen webservices voor POST en PUT, moet u een andere tool gebruiken genaamd fiddler die kan worden gebruikt om het POST- en PUT-verzoek naar de server te verzenden.