206

Partial Content

Oficial
se ha transmitido la parte solicitada del recurso. La solicitud se ha realizado correctamente.

Especificación del código de estado HTTP 206

El código de estado 206 Partial Content indica que el servidor está cumpliendo con éxito una solicitud de rango para el recurso de destino mediante la transferencia de una o más partes de la representación seleccionada que corresponden a los rangos satisfactorios encontrados en el campo de cabecera Range de la solicitud (Sección 3.1).

Si se está transfiriendo una sola parte, el servidor que genera la respuesta 206 Partial Content DEBE generar un campo de cabecera Content-Range, que describa qué rango de la representación seleccionada se incluye, y una carga útil que consista en el rango. Por ejemplo

HTTP/1.1 206 Partial Content Contenido parcial
Fecha: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Range: bytes 21010-47021/47022
Content-Length: 26012
Content-Type: image/gif

... 26012 bytes de datos parciales de la imagen ...

Si se están transfiriendo varias partes, el servidor que genera la respuesta 206 Partial Content DEBE generar una carga útil "multipart/byteranges", tal y como se define en el Apéndice A, y un campo de cabecera Content-Type que contenga el tipo de medio multipart/byteranges y su parámetro boundary requerido. Para evitar confusiones con las respuestas de una sola parte, un servidor NO DEBE generar un campo de cabecera Content-Range en la sección de cabecera HTTP de una respuesta de varias partes (en su lugar, este campo se enviará en cada parte).

Dentro del área de cabecera de cada parte del cuerpo en la carga útil multiparte, el servidor DEBE generar un campo de cabecera Content-Range correspondiente al rango que se está encerrando en esa parte del cuerpo. Si la representación seleccionada hubiera tenido un campo de cabecera Content-Type en una respuesta 200 (OK), el servidor DEBERÍA generar ese mismo campo Content-Type en el área de cabecera de cada parte del cuerpo.

Por ejemplo:

HTTP/1.1 206 Partial Content Contenido parcial
Fecha: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Length: 1741
Content-Type: multipart/byteranges; boundary=THIS_STRING_SEPARATES


--THIS_STRING_SEPARATES
Content-Type: application/pdf
Content-Range: bytes 500-999/8000


...el primer rango...
--THIS_STRING_SEPARATES
Content-Type: application/pdf
Content-Range: bytes 7000-7999/8000


...el segundo rango
--THIS_STRING_SEPARATES--

Cuando se solicitan múltiples rangos, un servidor PUEDE unir cualquiera de los rangos que se solapen, o que estén separados por un espacio que sea menor que la sobrecarga de enviar múltiples partes, independientemente del orden en el que aparezca la correspondiente especificación de rango de bytes en el campo de cabecera Range recibido. Dado que la sobrecarga típica entre partes de una carga útil multipart/byteranges es de unos 80 bytes, dependiendo del tipo de medio de la representación seleccionada y de la longitud del parámetro límite elegido, puede ser menos eficiente transferir muchas partes pequeñas disjuntas que transferir la representación seleccionada completa.

Un servidor NO DEBE generar una respuesta multiparte a una solicitud de un único rango, ya que un cliente que no solicite múltiples partes podría no soportar respuestas multiparte. Sin embargo, un servidor PUEDE generar una carga útil multiparte/byteranges con una sola parte del cuerpo si se solicitaron varios rangos y sólo uno de ellos resultó ser satisfactorio o sólo quedó un rango después de la fusión. Un cliente que no pueda procesar una respuesta multipart/byteranges NO DEBE generar una solicitud que pida varios rangos.

Cuando se genera una carga útil de respuesta multiparte, el servidor DEBERÍA enviar las partes en el mismo orden en que la correspondiente especificación de rango de bytes aparecía en el campo de cabecera Range recibido, excluyendo aquellos rangos que se consideraron insatisfactibles o que se unieron en otros rangos. Un cliente que recibe una respuesta multiparte DEBE inspeccionar el campo de cabecera Content-Rang

Fuente / Cita de: El código de estado HTTP 206 Partial Content se especifica en la sección 4.1 de RFC7233.

¿Cómo lanzar un código de estado 206 con PHP?

Para lanzar el código de estado HTTP 206 en una página web, se puede utilizar la función PHP http_response_code. La sintaxis es la siguiente: http_response_code(206) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Probar el código de estado HTTP 206

Para poder mostrar el código de estado HTTP (en este caso 206 Partial Content) y otra información en el lado del cliente, debe abrirse la consola de desarrollo con F12. A continuación, vaya a la pestaña "Red". Ahora se puede abrir la página, el sitio web (ejemplo index.php) debe ser visible en la pestaña de red. Esta debe ser seleccionada y luego la sección Herder debe ser seleccionada. El usuario verá entonces el siguiente resultado:

Código de estado 206 Partial Content
Visión general
URL: https://http-statuscode.com/errorCodeExample.php?code=206
Estado: 206 Partial Content
Esos: Network
Dirección IP: XX.XX.XX.XX
Código de estado 206 Partial Content

Compatibilidad del código de estado 206 con los navegadores

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

Constantes en lenguajes de programación

http.StatusPartialContent
Response::HTTP_PARTIAL_CONTENT
:partial_content

Artículos de blog

SEO y códigos de estado HTTP: Un análisis exhaustivo

La optimización de un sitio web para los motores de búsqueda (SEO) es una tarea compleja. Uno de los aspectos que a menudo se pasan por alto, pero que son cruciales para una buena clasificación, so...

Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser es un entusiasta desarrollador web aficionado a los códigos de estado HTTP.

LinkedInGitHub