Existe-t-il une liste à jour des chaînes d'en-tête HTTP User-Agent --> systèmes d'exploitation ?
Réponses
Trop de publicités?Voici une liste rapide... faites-moi savoir si j'en ai oublié un qui vous intéresse.
http://www.geekpedia.com/code47_Detect-operating-system-from-user-agent-string.html :
// Faire correspondre la chaîne de l'agent utilisateur avec les systèmes d'exploitation
Windows 3.11 => Win16,
Windows 95 => (Windows 95)|(Win95)|(Windows_95),
Windows 98 => (Windows 98)|(Win98),
Windows 2000 => (Windows NT 5.0)|(Windows 2000),
Windows XP => (Windows NT 5.1)|(Windows XP),
Windows Server 2003 => (Windows NT 5.2),
Windows Vista => (Windows NT 6.0),
Windows 7 => (Windows NT 6.1),
Windows 8 => (Windows NT 6.2),
Windows NT 4.0 => (Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT),
Windows ME => Windows ME,
Open BSD => OpenBSD,
Sun OS => SunOS,
Linux => (Linux)|(X11),
Mac OS => (Mac_PowerPC)|(Macintosh),
QNX => QNX,
BeOS => BeOS,
OS/2 => OS/2,
Recherche Bot=>(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask Jeeves/Teoma)|(ia_archiver)
Dans quelle langue développez-vous ? Cela fait une énorme différence dans ce qui est disponible pour vous si vous voulez faire de l'exploration de données sur la chaîne de l'agent de l'utilisateur.
- PHP a "
browser.php
"qui analyse l'agent utilisateur en fonction du système d'exploitation, du navigateur et de la version du navigateur :-
http://www.geekpedia.com/code47_Detect-operating-system-from-user-agent-string.html (avertissement : Win7 est
Windows NT 6.1
pasWindows NT 7.0
)
-
http://www.geekpedia.com/code47_Detect-operating-system-from-user-agent-string.html (avertissement : Win7 est
- Javascript possède l'objet Navigator qui contient de nombreux détails sur le système de l'utilisateur.
- .NET dispose de l'objet HttpBrowserCapabilities qui peut être utilisé pour déterminer les capacités Win32 ou Win16, ainsi que les capacités utiles du navigateur.
- Zytrax.com dispose également d'une bonne base de données des agents utilisateurs pour différents navigateurs sur différents systèmes si vous souhaitez simplement obtenir les agents utilisateurs bruts.
La réponse de Nescio fournit une bonne liste. Le deuxième lien sous PHP dans ma liste contient également les mêmes informations qui sont suffisamment simples pour que vous puissiez les traduire dans n'importe quelle langue.
Gardez à l'esprit que l'utilisation de l'agent utilisateur pour tout ce qui est est truffé de problèmes. À moins que vous ne soyez prêt à consacrer une partie de votre temps de développement à surveiller les agents utilisateurs qui visitent votre site et à effectuer une maintenance constante, vous devriez essayer d'éviter complètement de le faire. Quel que soit le cas d'utilisation de la détection du système d'exploitation, tous les systèmes d'exploitation de toutes les plates-formes peuvent subir des changements radicaux en très peu de temps. Il est donc important d'en être conscient et de faire attention à la manière et à la raison de la détection du système d'exploitation.
Pour approfondir les risques : Sur le poste de travail, une nouvelle version du système d'exploitation peut sortir toutes les 6 semaines (Chrome OS), 6 mois (Ubuntu), 1 an (Mac OS), ou 2-3 ans (Windows). Il faut également tenir compte des systèmes d'exploitation publiés pour les téléphones, les tablettes et les consoles de jeux, horloges etc. qui peuvent avoir des cycles de publication beaucoup plus fréquents et des changements imprévisibles dans la part de marché. Il suffit de voir comment BlackBerry, Palm OS, Web OS, iOS, Android, Windows Mobile et Windows Phone ont changé de parts de marché au cours des dernières années, pour n'en citer que quelques-uns.
À moins que le système d'exploitation ne soit une dépendance de votre site, par exemple si vous créez une page de "téléchargement" ciblée pour une application (ce qui, en soi, peut poser de nombreux problèmes), il est presque toujours préférable d'utiliser l'option détection de caractéristiques qui vous permettra d'assurer l'avenir de votre développement sans avoir à maintenir constamment le code de détection du navigateur ou du système d'exploitation.
C'est presque toujours une mauvaise idée de faire du reniflage d'urine. Vous ne pouvez pas du tout vous y fier.
Si vous voulez envoyer au client une réponse spécifique à son environnement, vous devriez peut-être distinguer les différences de type de contenu ou d'encodage. Celles-ci sont solide comme un roc, spécifié .
L'agent utilisateur du navigateur n'est pas un élément auquel je me fierais pour quoi que ce soit. Nous l'utilisons tous pour les statistiques, mais nous savons qu'elles ne sont pas exactes à 100 %.
J'utilise firefox et usurpe régulièrement IE pour certains sites qui ne l'aiment pas, mon UA habituel est :
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3)
Gecko/2008101315 Ubuntu/8.10 (intrepid) Firefox/3.0.3
J'utilise parfois une extension firefox pour le modifier :
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MS-RTC LM 8;
.NET CLR 2.0.50727; .NET CLR 1.1.4322)
lorsque vous le regardez, vous devez analyser les différentes parties, l'OS est la troisième partie des valeurs délimitées par des points-virgules entre les crochets.