Signification
Le serveur a reçu les en-têtes de la requête et le client peut envoyer le corps. C'est une réponse provisoire envoyée avant le statut final.
Causes courantes
- Le client a envoyé Expect: 100-continue avant un gros envoi
- curl ajoute Expect: 100-continue aux corps POST de plus de 1 Ko
- Un proxy ou un serveur confirme qu'il acceptera le corps
Comment corriger
Côté client ou visiteur
Rien à corriger : attendez le 100, puis envoyez le corps. Si le serveur ne répond jamais, envoyez le corps après un court délai ou supprimez l'en-tête Expect (curl -H 'Expect:').
Côté propriétaire du site ou de l’API
La plupart des serveurs envoient 100 automatiquement. Validez d'abord les en-têtes comme l'authentification et Content-Length, et répondez par une erreur finale (401, 413) plutôt que 100 si vous allez de toute façon refuser le corps.
Exemple de réponse
HTTP/1.1 100 Continue Spécification
FAQ
› Verrai-je 100 Continue dans l'onglet réseau du navigateur ?
En général non. Les navigateurs n'envoient pas Expect: 100-continue et les réponses provisoires sont masquées ; on rencontre surtout 100 avec curl, les SDK et les clients d'envoi de fichiers.
› 100 Continue est-elle la réponse finale ?
Non. Elle est informative. Le serveur doit encore envoyer un statut final comme 200, 201 ou 413 une fois le corps reçu.