Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
En-tête Content-Encoding
Baseline Widely available *
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
L'en-tête de représentation HTTPContent-Encoding liste les encodages et l'ordre dans lequel ils ont été appliqués à une ressource.Ceci permet au·à la destinataire de savoir comment décoder les données afin d'obtenir le format de contenu d'origine décrit dans l'en-têteContent-Type.L'encodage du contenu est principalement utilisé pour compresser le contenu sans perdre d'information sur le type de média d'origine.
Les serveurs doivent compresser les données autant que possible, et utiliser l'encodage de contenu lorsque cela est approprié.Compresser des types de médias déjà compressés, comme .zip ou .jpeg, n'est généralement pas approprié car cela peut augmenter la taille du fichier.Si le média d'origine est déjà encodé (par exemple, sous forme de fichier .zip), cette information n'est pas incluse dans l'en-têteContent-Encoding.
Lorsque l'en-têteContent-Encoding est présent, les autres métadonnées (par exemple,Content-Length) se réfèrent à la forme encodée des données, et non à la ressource d'origine, sauf indication explicite.L'encodage du contenu diffère deTransfer-Encoding en ce queTransfer-Encoding gère la façon dont les messages HTTP eux-mêmes sont transmis sur le réseaude point à point.
| Type d'en-tête | En-tête de représentation |
|---|---|
| En-tête de requête interdit | Non |
Dans cet article
Syntaxe
Content-Encoding: gzipContent-Encoding: compressContent-Encoding: deflateContent-Encoding: brContent-Encoding: zstdContent-Encoding: dcbContent-Encoding: dcz// Plusieurs valeurs selon l'ordre dans lequel ils ont été appliquésContent-Encoding: deflate, gzipDirectives
gzipUn format utilisant lecodage Lempel-Ziv (LZ77), avec un CRC sur 32 bits.Il s'agit du format original du programme UNIXgzip.La norme HTTP/1.1 recommande également que les serveurs prenant en charge cet encodage reconnaissent
x-gzipcomme alias, à des fins de compatibilité.compressUn format utilisant l'algorithmeLempel-Ziv-Welch (LZW).Le nom de la valeur provient du programme UNIXcompress, qui implémentait cet algorithme.Comme le programme compress, qui a disparu de la plupart des distributions UNIX, ce codage de contenu n'est plus utilisé par de nombreux navigateurs aujourd'hui, en partie à cause d'un problème de brevet (expiré en 2003).
deflateUtilise la structurezlib (définie dans laRFC 1950) avec l'algorithme de compressiondeflate (défini dans laRFC 1951).
brUn format utilisant la structure d'algorithmeBrotli (définie dans laRFC 7932).
zstdUn format utilisant la structure d'algorithmeZstandard (définie dans laRFC 8878).
dcbExpérimentalUn format qui utilise l'algorithme Brotli compressé par dictionnaire(angl.). VoirTransport de dictionnaire de compression.
dczExpérimentalUn format qui utilise l'algorithme Zstandard compressé par dictionnaire(angl.). VoirTransport de dictionnaire de compression.
Exemples
>Compression avec gzip
Côté client, on peut fournir la liste des mécanismes de compression pris en charge en envoyant l'en-têteAccept-Encoding lors de la négociation de l'encodage.
Accept-Encoding: gzip, deflateLe serveur répondra avec le schéma utilisé avec l'en-tête de réponseContent-Encoding.
Content-Encoding: gzipÀ noter que le serveur n'est pas obligé d'utiliser de méthode de compression. La compression dépend fortement des paramètres du serveur et des modules de serveur utilisés.
Spécifications
| Specification |
|---|
| HTTP Semantics> # field.content-encoding> |
Compatibilité des navigateurs
Voir aussi
- L'en-tête
Accept-Encoding - L'en-tête
Transfer-Encoding - L'entrée de glossaireCompression Brotli
- L'entrée de glossaireCompression GZip
- L'entrée de glossaireCompression Zstandard
- Guide sur le transport de dictionnaire de compression