personalizadas - ¿Se requiere el encabezado Content-Length para una respuesta HTTP/1.0?
http request (1)
¿Se requiere el encabezado Content-Length
para una respuesta HTTP / 1.0? La especificación HTTP menciona que se requiere para la solicitud, pero no menciona nada sobre la respuesta:
http://www.w3.org/Protocols/HTTP/1.0/draft-ietf-http-spec.html#Content-Length
Se requiere un valor de campo de longitud de contenido válido en todos los mensajes de solicitud HTTP / 1.0 que contengan un cuerpo de entidad.
Si no se requiere para la respuesta, ¿cómo lee el cliente la respuesta cuando es más grande que 1MB?
La sección 10.4 de la especificación (a la que se ha vinculado) no dice nada sobre los requisitos de las respuestas en sí, sino enlaces a la sección 7.2.2 , que especifica que el servidor puede indicar la duración de una respuesta que contiene un cuerpo de entidad
- enviar un encabezado
Content-Length
, o - cerrando la conexión cuando se envió toda la respuesta.
La Sección 7.2 dice que las respuestas a las solicitudes HEAD
, y las respuestas 1xx, 204 o 304, no deben incluir un cuerpo de entidad, y por lo tanto no es necesario que incluya un encabezado Content-Length
; y
Todas las otras respuestas deben incluir un cuerpo de entidad o un campo de encabezado de
Content-Length
definido con un valor de cero (0).
Entonces, para responder la pregunta: cuando no se recibe Content-Length
, el cliente sigue leyendo hasta que el servidor cierra la conexión.