Cosa significa
Il server ha ricevuto gli header della richiesta e il client può proseguire inviando il corpo. È una risposta provvisoria inviata prima dello stato finale.
Cause comuni
- Il client ha inviato Expect: 100-continue prima di un caricamento grande
- curl aggiunge Expect: 100-continue ai corpi POST oltre 1 KB
- Un proxy o un server conferma che accetterà il corpo
Come risolvere
Lato client o visitatore
Niente da correggere: attendi il 100 e poi invia il corpo. Se il server non risponde mai, invia il corpo dopo un breve timeout o rimuovi l'header Expect (curl -H 'Expect:').
Lato gestore del sito o dell’API
La maggior parte dei server invia 100 automaticamente. Valida prima header come autenticazione e Content-Length e rispondi con un errore finale (401, 413) invece di 100 se rifiuterai comunque il corpo.
Risposta di esempio
HTTP/1.1 100 Continue Specifica
Domande frequenti
› Vedrò 100 Continue nella scheda di rete del browser?
Di solito no. I browser non inviano Expect: 100-continue e le risposte provvisorie sono nascoste; il 100 si incontra soprattutto con curl, SDK e client di upload.
› 100 Continue è la risposta finale?
No. È informativa. Il server deve comunque inviare uno stato finale come 200, 201 o 413 dopo l'arrivo del corpo.