Content-Encoding
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