Localisation de pages web

Petite différence de comportement entre Chrome et Firefox lorsqu'il s'agit de lire la langue du navigateur à l'aide du javascript pour localiser une application.

Le problème vient du fait que l'API navigator.language en javascript renvoit dans Chrome la langue du navigateur lui-même - du logiciel - alors que Firefox lui renvoit la valeur qui a été sélectionnée dans les préférences utilisateur et qui est utilisé pour définir l'en-tête Accept-Language envoyé lors des requêtes HTTP. Et c'est sans doute cette valeur qui est à privilégié, ce qui nécessite néanmoins un allé-retour serveur vu que rien en javascript en permet de récupérer cette information.

En java, on peut utiliser la méthode getLocale de l'interface ServletRequest ou sa forme plus complète getLocales(). En PHP, C'est un peu plus compliqué.

Titre
Accept-Language
Editeur
Mozilla Developer Network
Date
Titre
Accept-Language used for locale setting
Editeur
W3C Internationalization
Date
Titre
HTTP/1.1 Semantics and Content
Editeur
IETF
Date
chapter
5.3.5. Accept-Language