Accept-Charset

L'en-tête HTTP de la requêteAccept-Charset indique le jeu de caractères que le client est capable de comprendre. À l'aide de la content negotiation, le serveur sélectionne l'une des propositions, l'utilise et informe le client de son choix dans l'en-tête de réponse Content-Type. Les navigateurs ne définissent généralement pas cet en-tête car la valeur par défaut de chaque type de contenu est généralement correcte et sa transmission permettrait une empreinte digitale plus facile.

Si le serveur ne peut servir aucun jeu de caractères correspondant, il peut théoriquement renvoyer un code d'erreur 406 (non acceptable). Cependant, pour une meilleure expérience utilisateur, cela est rarement fait et le moyen le plus courant consiste à ignorer l'en-tête Accept-Charset dans ce cas.

Dans les premières versions de HTTP / 1.1, un jeu de caractères par défaut (ISO-8859-1) était défini. Ce n'est plus le cas et maintenant chaque type de contenu peut avoir sa propre valeur par défaut.

Header type Request header
Forbidden header name yes

Syntax

Accept-Charset: <charset>

// Multiple types, weighted with the quality value syntax:
Accept-Charset: utf-8, iso-8859-1;q=0.5

Les directives

<charset>
Un jeu de caractères comme utf-8 ou iso-8859-15.
*
Tout jeu de caractères non mentionné ailleurs dans l'en-tête; '*' utilisé comme un joker.
;q= (q-factor weighting)
Toute valeur est placée dans un ordre de préférence exprimé à l'aide d'une valeur de qualité relative appelée  weight.

Examples

Accept-Charset: iso-8859-1

Accept-Charset: utf-8, iso-8859-1;q=0.5

Accept-Charset: utf-8, iso-8859-1;q=0.5, *;q=0.1

Specifications

Specification Titre
RFC 7231, section 5.3.3: Accept-Charset Hypertext Transfer Protocol (HTTP/1.1): Semantics and Context

Compatibilité du navigateur

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung Internet
Accept-CharsetChrome Aucun support ? — 27Edge Aucun support NonFirefox Aucun support ? — 10IE Aucun support ? — 8Opera Aucun support ? — 11Safari Aucun support ? — 5WebView Android Aucun support ? — ?Chrome Android Aucun support ? — 27Firefox Android Aucun support ? — 10Opera Android Aucun support ? — 11Safari iOS Aucun support ? — 4.2Samsung Internet Android Aucun support ? — 1.5

Légende

Aucun support  
Aucun support

Voir également