La requête a été acceptée mais n’a pas encore été traitée.
Quand l’utiliser
Tâches en file d’attente ou en arrière-plan. Fournissez un moyen de suivre la progression.
Bon à savoir
202 ne promet rien quant au résultat : la tâche peut encore échouer plus tard. Renvoyez une URL de statut dans Location ou dans le corps, comme /jobs/123, et éventuellement Retry-After pour suggérer un intervalle d’interrogation. Le point de terminaison de statut répond 200 avec un état comme queued, running, done ou failed, et une fois la tâche terminée, il peut pointer vers le résultat ou y rediriger avec un 303.
Les webhooks sont l’alternative push à l’interrogation régulière. Rendez le traitement idempotent, car un client qui ne reçoit jamais le 202, après un délai d’expiration ou une connexion coupée, renverra la requête. Placez la tâche dans une file durable, comme SQS, un worker adossé à Redis ou une table de tâches, avant de répondre : les plateformes serverless comme AWS Lambda gèlent le processus dès que la réponse est envoyée, donc un traitement en arrière-plan dans le processus risque de ne jamais s’exécuter.
Succès (2xx)
Les codes 2xx indiquent un succès : le serveur a reçu, compris et accepté la requête.
À quoi ça ressemble
HTTP/1.1 202 AcceptedComment l’envoyer
| Node.js / Express | res.status(202).end() |
|---|---|
| Python / Flask | return '', 202 |
| nginx | return 202; |
Comment le vérifier
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/