Content-Encoding

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

La cabecera Content-Encoding es usada para comprimir el media-type. Cuando está presente, su valor indica qué codificación de contenido adicional ha sido aplicada al cuerpo de la entidad. Permite al cliente saber cómo decodificar para obtener el media-type referido por la cabecera Content-Type.

Se recomienda comprimir los datos tanto como sea posible y por lo tanto utilizar este campo, pero algunos tipos de recursos, como imágenes JPEG, ya están comprimidos. A veces, el uso de compresión adicional no reduce el tamaño de la petición e incluso puede hacer que la petición sea más larga.

Header type Entity header
Forbidden header name no

Sintaxis

Content-Encoding: gzip
Content-Encoding: compress
Content-Encoding: deflate
Content-Encoding: identity
Content-Encoding: br

Directivas

gzip

Un formato que usa Lempel-Ziv coding (LZ77), con un CRC de 32 bits. Este es originalmente el formato del programa gzip de UNIX . El estándar HTTP/1.1 también recomienda que los servidores que soporten esta codificación también deberían reconocer x-gzip como un alias por motivos de compatibilidad.

compress

Un formato que usa el algoritmo Lempel-Ziv-Welch (LZW). El nombre viene del programa compress de UNIX , que implementó este algoritmo. Al igual que el programa compress, el cual ha desaparecido de la mayoría de distribuciones UNIX, esta codificación apenas es utilizada por los navegadores de hoy día, en parte debido a un problema de patente (la cual expiró en 2003).

deflate

Usa la estructura zlib (definida en RFC 1950), con el algoritmo de compresión deflate (definido en RFC 1951).

identity

Indica la función de identidad (es decir, sin compresión ni modificación). Este símbolo, excepto si se especifica explícitamente, siempre se considera aceptable.

br

Un formato que usa el algoritmo Brotli.

Ejemplos

Comprimiendo con gzip

En el lado del cliente, puede detectar una lista de esquemas de compresión que serán enviados en una petición HTTP. La cabecera Accept-Encoding se utiliza para la negociación de la codificación del contenido.

Accept-Encoding: gzip, deflate

El servidor responde con el esquema usado, indicado por la cabecera de respuesta Content-Encoding.

Content-Encoding: gzip

Ten en cuenta que el servidor no está obligado a usar algun método de compresión. La compresión depende directamente de la configuración del servidor y los módulos que utilice.

Especificaciones

Especificación Título
RFC 7231, sección 3.1.2.2: Content-Encoding Hypertext Transfer Protocol (HTTP/1.1): Semántica y Contenido
http://www.ietf.org/id/draft-alakuijala-brotli Formato de datos comprimidos Brotli

Compatibilidad con los navegadores

BCD tables only load in the browser

Ver también