Non è possibile stabilire da RFC 2616 se un client HTTP deve accettare una risposta senza risposta 204 che include Content-Length: 0 o Transfer-Encoding: intestazioni Chunked. Queste intestazioni sembrano rompere alcune client HTTP e proxy, che a quanto pare tenta di leggere il corpo risposta vuota, ma the spec reads:È un'applicazione HTTP che invia una Content-Length o Transfer-Encoding con una risposta 204 No Content interrotta?
- Qualsiasi messaggio di risposta che "NON DEVE" includere un messaggio-corpo (come il Le risposte 1xx, 204 e 304 e qualsiasi risposta a una richiesta HEAD) è terminata sempre dalla prima riga vuota dopo i campi dell'intestazione, indipendentemente dai campi dell'intestazione dell'entità presenti nel messaggio.
a me "a prescindere dai campi di entità-header" implica che i clienti dovrebbero tollerare questo stato di cose. Il Erlang HTTP library ha scelto questa interpretazione. Tuttavia, lighthttpd e IBM hanno scelto l'interpretazione opposta - che il server non dovrebbe includere queste intestazioni per le risposte a cui è vietato avere corpi.
Quindi l'applicazione Web dovrebbe rimuovere tali intestazioni dalla risposta oppure l'infrastruttura di rete ei client devono tollerare quelle intestazioni su 204 Nessun contenuto, 304 Non modificato, ecc.?
Nice - sei anni dopo, hai la risposta corretta! –