Question

Comment les sites Web découvrent-ils quel navigateur les visitent

comment je peux le faire

Etes-vous en train de donner une réponse pour asp.net c #

Était-ce utile?

La solution

Le navigateur indique au serveur quel type de navigateur il est dans la chaîne User-Agent, qu'il inclut avec chaque requête HTTP.

Vous pouvez accéder directement à User-Agent et l'analyser vous-même, ou utiliser la fonctionnalité de navigateur intégrée d'ASP.NET, qui repose sur plusieurs fichiers * .browser, expressions régulières, etc.

User-Agent: <%= Request.UserAgent %>
ID: <%= Request.Browser.Id %>
Browser: <%= Request.Browser.Browser %>
Type: <%= Request.Browser.Capabilities["type"] %>

Autres conseils

Ils recherchent l'agent d'utilisateur passé dans la requête.

Dans ASP.NET:

Request.ServerVariables [" HTTP_USER_AGENT "]]

Le protocole HTTP fournit un attribut de la en-tête de la demande . appelé Agent utilisateur que le client (ici, les navigateurs Web) remplit avec une chaîne identifiant la marque, la version et le système d'exploitation du navigateur. Comme tous les éléments de l'en-tête HTTP, ces informations peuvent être "spoofées". ou modifiés à diverses fins (par exemple par diverses passerelles de confidentialité côté client, etc.), mais il est généralement relativement fiable.

Voici un exemple d'une telle chaîne User-Agent (ici pour un navigateur FireFox, version 3.5, fonctionnant sous Windows XP)

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5

Ces informations, ainsi que d’autres attributs de l’en-tête, peuvent être interrogées par l’application destinataire. Bien que les spécificités varient d'un langage / framework à un autre, il est possible que ces langages / framworks exposent un modèle d'objet simple reflétant les différents objets associés au protocole HTTP. Dans le cas de l'en-tête http, il s'agit généralement de la requête "Demande". (peut être nommé différemment) object, l'accès à l'agent utilisateur peut donc ressembler à:

  ClientBrowser = Request.Header("User-Agent")

ou éventuellement

  ClientBrowser = HttpHeader.UserAgent

Modifier : dans le cas de C # / ASP.NET (modification tardive de la question):

ClientBrowser = Request.ServerVariables("HTTP_USER_AGENT")

Bien que vous puissiez être tentés d'utiliser directement ces informations, vous pouvez également vous fier à différentes bibliothèques qui encapsulent les détails de l'analyse des [très nombreuses versions des] chaînes User-Agent pour comprendre sur le navigateur Web et même sur les formes particulières de javascript, ce client doit être envoyé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top