R representatief S taat T ransfer (REST) is een architecturale stijl die een reeks beperkingen definieert die moeten worden gebruikt voor het maken van webservices. REST-API is een manier om op een eenvoudige en flexibele manier toegang te krijgen tot webservices zonder enige verwerking.

REST-technologie heeft over het algemeen de voorkeur boven de robuustere Simple Object Access Protocol (SOAP) -technologie, omdat REST minder bandbreedte gebruikt, eenvoudig en flexibel is, waardoor het geschikter is voor internetgebruik. Het wordt gebruikt om informatie van een webservice op te halen of te geven. Alle communicatie via REST API maakt alleen gebruik van HTTP-verzoeken.
Werkend: Een verzoek wordt van client naar server verzonden in de vorm van een web-URL als HTTP GET- of POST- of PUT- of DELETE-verzoek. Daarna komt er een antwoord terug van de server in de vorm van een bron die van alles kan zijn, zoals HTML, XML, Image of JSON. Maar nu is JSON het populairste formaat dat wordt gebruikt in webservices.
Bouw REST API-beheersing Leer populaire en praktische Python REST API's te integreren in Django-webapplicaties met het interactieve vaardigheidspad van Educative Word een op Python gebaseerde API-integrator. Meld je aan op Educative.io met de code GEEKS10 om 10% te besparen op uw abonnement.

In HTTP er zijn vijf methoden die vaak worden gebruikt in een op REST gebaseerde architectuur, namelijk POST, GET, PUT, PATCH en DELETE. Deze komen overeen met respectievelijk de bewerkingen maken, lezen, bijwerken en verwijderen (of CRUD). Er zijn andere methoden die minder vaak worden gebruikt, zoals OPTIONS en HEAD.
- KRIJGEN: Hiervoor wordt de HTTP GET-methode gebruikt lezen (of ophalen) een weergave van een hulpbron. In het veilige pad retourneert GET een representatie in XML of JSON en een HTTP-antwoordcode van 200 (OK). In geval van een fout retourneert het meestal een 404 (NIET GEVONDEN) of 400 (SLECHTS VERZOEK).
- NA: Het POST-werkwoord wordt meestal gebruikt om creëren nieuwe hulpbronnen. Het wordt met name gebruikt om ondergeschikte bronnen te creëren. Dat wil zeggen, ondergeschikt aan een andere (bijvoorbeeld bovenliggende) bron. Bij een succesvolle creatie retourneert u de HTTP-status 201, waarbij u een Location-header retourneert met een link naar de nieuw gemaakte bron met de HTTP-status 201.
OPMERKING: POST is noch veilig, noch idempotent.
- NEERZETTEN: Je gebruikt het voor bijwerken de mogelijkheden. PUT kan echter ook worden gebruikt creëren een bron in het geval dat de bron-ID wordt gekozen door de client in plaats van door de server. Met andere woorden, als de PUT naar een URI gaat die de waarde van een niet-bestaande resource-ID bevat. Bij een succesvolle update retourneert u 200 (of 204 als er geen inhoud in de hoofdtekst wordt geretourneerd) uit een PUT. Als u PUT gebruikt voor het maken, retourneert u de HTTP-status 201 bij een succesvolle creatie. PUT is geen veilige werking, maar wel idempotent.
- LAPJE: Het is gewend bewerken mogelijkheden. Het PATCH-verzoek hoeft alleen de wijzigingen aan de bron te bevatten, niet de volledige bron. Dit lijkt op PUT, maar de body bevat een reeks instructies die beschrijven hoe een bron die zich momenteel op de server bevindt, moet worden aangepast om een nieuwe versie te produceren. Dit betekent dat de PATCH-body niet alleen een aangepast onderdeel van de bron moet zijn, maar in een soort patchtaal zoals JSON Patch of XML Patch. PATCH is noch veilig, noch idempotent.
- VERWIJDEREN: Het is gewend verwijderen een bron die wordt geïdentificeerd door een URI. Bij succesvolle verwijdering retourneert u HTTP-status 200 (OK) samen met een antwoordtekst.
Idempotentie: Een idempotente HTTP-methode is een HTTP-methode die vele malen kan worden aangeroepen zonder verschillende uitkomsten. Het maakt niet uit of de methode slechts één keer of tien keer wordt aangeroepen. Het resultaat zou hetzelfde moeten zijn. Nogmaals, dit geldt alleen voor het resultaat, niet voor de bron zelf.
Voorbeeld:
C
aanwijzingen in c
1. a = 4>// It is Idempotence, as final value(a = 4)> >// would not change after executing it multiple> >// times.> 2. a++>// It is not Idempotence because the final value> >// will depend upon the number of times the> >// statement is executed.> |
>
>
Verzoek en antwoord
Nu zullen we zien hoe verzoek en antwoord voor verschillende werken HTTP methoden. Laten we aannemen dat we een API( https://www.techcodeview.com ) voor alle studentengegevens van gfg.
- KRIJGEN: Verzoek voor alle studenten.
| Verzoek |
| GET:/api/studenten |
- NA: Verzoek om gegevens te posten/aan te maken/in te voegen
| Verzoek |
| POST:/api/studenten {naam:Raj} |
- PUT of PATCH: Verzoek om gegevens bij te werken op id=1
| Verzoek |
| PUT of PATCH:/api/studenten/1 {naam:Raj} |
- VERWIJDEREN: Verzoek om gegevens van id=1 te verwijderen
| Verzoek |
| VERWIJDEREN:/api/studenten/1 |
RESTful-webservices zijn erg populair omdat ze licht van gewicht zijn, zeer schaalbaar en onderhoudbaar zijn en zeer vaak worden gebruikt om API's voor webgebaseerde applicaties te maken.