Vertel over HTTP-methoden en hun idempotentie.
sobes.tech AI
Antwoord van AI
HTTP-methoden bepalen de actie die de client wil uitvoeren op een bron. De belangrijkste methoden:
GET: Een bron ophalen. Is idempotent (herhaalde verzoeken veranderen de toestand op de server niet).POST: Gegevens verzenden voor verwerking (bijvoorbeeld, een nieuwe bron maken, formuliergegevens verzenden). Is meestal niet idempotent.PUT: Een bron maken of bijwerken op de gespecificeerde URI. Is idempotent (herhaalde verzoeken met dezelfde gegevens leiden tot dezelfde toestand van de bron).DELETE: Een bron verwijderen op de gespecificeerde URI. Is idempotent (na het eerste succesvolle verzoek veranderen herhaalde verzoeken de toestand niet, omdat de bron al verwijderd is).PATCH: Een bron gedeeltelijk wijzigen. Is meestal niet idempotent, omdat de volgorde van bewerkingen belangrijk kan zijn.HEAD: De headers van deGET-respons verkrijgen zonder de responsbody. Is idempotent.OPTIONS: De lijst van ondersteunde methoden voor een bron verkrijgen. Is idempotent.
Idempotentie betekent dat het meerdere keren uitvoeren van dezelfde aanvraag tot dezelfde eindtoestand van het systeem leidt als het eenmaal uitvoeren. Dit geldt alleen voor bijwerkingen op de server. Serverantwoorden kunnen verschillen (bijvoorbeeld, de eerste DELETE-aanvraag kan 200 OK retourneren, de volgende — 404 Not Found).
Voorbeelden van niet-idempotente operaties:
- Meerdere keren een product aan de winkelwagen toevoegen met
POST. - Een teller verhogen met
POSTofPATCH.
Voorbeelden van idempotente operaties:
- Meerdere keren gegevens ophalen met
GET. - Een gebruiker maken of bijwerken met een specifiek ID met
PUT. - Een gebruiker verwijderen met een specifiek ID met
DELETE.
Idempotentie is belangrijk wanneer verzoeken opnieuw moeten worden verzonden (bijvoorbeeld bij netwerkfouten). De server kan een idempotent verzoek veilig meerdere keren uitvoeren zonder ongewenste wijzigingen te veroorzaken.