202 Accepted

Die Anfrage wurde angenommen, aber noch nicht verarbeitet.

Wann du ihn verwendest

Eingereihte oder Hintergrund-Jobs. Gib eine Möglichkeit zurück, den Fortschritt zu prüfen.

Gut zu wissen

202 verspricht nichts über das Ergebnis: Der Job kann später noch fehlschlagen. Gib eine Status-URL in Location oder im Body zurück, etwa /jobs/123, und optional Retry-After als empfohlenes Abfrageintervall. Der Status-Endpunkt antwortet mit 200 und einem Zustand wie queued, running, done oder failed, und wenn der Job fertig ist, kann er auf das Ergebnis verlinken oder mit 303 dorthin weiterleiten.

Webhooks sind die Push-Alternative zum Polling. Mach die Verarbeitung idempotent, denn ein Client, der die 202 wegen eines Timeouts oder einer abgebrochenen Verbindung nie erhält, sendet erneut. Leg den Job vor der Antwort in eine dauerhafte Queue wie SQS, einen Redis-basierten Worker oder eine Jobs-Tabelle: Serverless-Plattformen wie AWS Lambda frieren den Prozess ein, sobald die Antwort gesendet ist, sodass Hintergrundarbeit im selben Prozess womöglich nie läuft.

Erfolg (2xx)

2xx-Codes bedeuten Erfolg: Der Server hat die Anfrage erhalten, verstanden und angenommen.

So sieht es aus

HTTP/1.1 202 Accepted

So sendest du ihn

Node.js / Expressres.status(202).end()
Python / Flaskreturn '', 202
nginxreturn 202;

So prüfst du ihn

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

HTTP-Statuscodes öffnen