HTTP status code 428, ook wel "Precondition Required" genoemd, is een clientfoutstatuscode die aangeeft dat de aanvraag niet kan worden verwerkd omdat de server een precondition vereist.
De client kan de 428 Precondition Required-statuscode herkennen aan de HTTP-statuscode in de response van de server. De statuscode wordt gevolgd door een lege regel en vervolgens door de headers van de response.
De 428 Precondition Required-statuscode is een belangrijke statuscode die wordt gebruikt om aan te geven dat de aanvraag niet kan worden verwerkd omdat de server een precondition vereist. Dit kan bijvoorbeeld zijn omdat de server een bepaalde header verwacht, of omdat de server een bepaalde waarde verwacht voor een header.
Voorbeelden
Hier zijn enkele voorbeelden van wanneer een 428 Precondition Required-statuscode kan worden gebruikt:
Een client verzendt een aanvraag om een artikel te verwijderen. De server vereist dat de client een header met de naam If-Match
bevat met de waarde van de ETag van het artikel. De client heeft de header niet meegegeven. De server retourneert een 428 Precondition Required-response.
Een client verzendt een aanvraag om een artikel te bewerken. De server vereist dat de client een header met de naam If-Unmodified-Since
bevat met een datum en tijd die eerder is dan de laatste keer dat het artikel is gewijzigd. De client heeft de header niet meegegeven. De server retourneert een 428 Precondition Required-response.
Veiligheid
De 428 Precondition Required-statuscode is een veilige statuscode. Het kan niet worden gebruikt om schade toe te brengen aan een client-applicatie.
Bijkomende details
De response-headers van een 428 Precondition Required-response bevatten vaak een Retry-After-header. Deze header bevat een tijdsduur na welke de aanvraag opnieuw kan worden verzonden.
De 428 Precondition Required-statuscode is een belangrijk onderdeel van HTTP. Het maakt het mogelijk voor servers om clients te informeren dat een precondition vereist is.
Vergelijking met 200 OK
De 428 Precondition Required-statuscode is vergelijkbaar met de 200 OK-statuscode. Beide statuscodes geven aan dat de aanvraag is verwerkt. Het belangrijkste verschil is dat de 428 Precondition Required-statuscode aangeeft dat de aanvraag niet is goedgekeurd omdat de server een precondition vereist, terwijl de 200 OK-statuscode aangeeft dat de aanvraag is goedgekeurd.
Vergelijking met 400 Bad Request
De 428 Precondition Required-statuscode is vergelijkbaar met de 400 Bad Request-statuscode. Beide statuscodes geven aan dat de aanvraag niet is goedgekeurd. Het belangrijkste verschil is dat de 428 Precondition Required-statuscode aangeeft dat de aanvraag niet is goedgekeurd omdat de server een precondition vereist, terwijl de 400 Bad Request-statuscode aangeeft dat de aanvraag niet is goedgekeurd omdat de aanvraag ongeldig is.
Overige informatie
De 428 Precondition Required-statuscode wordt vaak gebruikt door webmasters om clients te informeren dat een precondition vereist is. Deze informatie kan worden gebruikt door de client om de aanvraag opnieuw te verzenden met de vereiste precondition.
Specifieke voorbeelden
Hier zijn enkele specifieke voorbeelden van wanneer een 428 Precondition Required-statuscode kan worden gebruikt:
Een client verzendt een aanvraag om een artikel te verwijderen. De server vereist dat de client een header met de naam If-Match
bevat met de waarde van de ETag van het artikel. De client heeft de header niet meegegeven. De client kan dan een nieuwe aanvraag verzenden met de header If-Match
.
Een client verzendt een aanvraag om een artikel te bewerken. De server vereist dat de client een header met de naam If-Unmodified-Since
bevat met een datum en tijd die eerder is dan de laatste keer dat het artikel is gewijzigd. De client heeft de header niet meegegeven. De client kan dan een nieuwe aanvraag verzenden met de header If-Unmodified-Since
.
In deze voorbeelden is de aanvraag correct geformatteerd, maar kan de aanvraag niet worden verwerkd omdat de server een precondition vereist.
Terug naar categorie