Pregunta

¿Cómo descubren los sitios web qué navegador los visita?

cómo puedo hacer esto

¿Está dando respuesta para asp.net c #

¿Fue útil?

Solución

El navegador le dice al servidor qué tipo de navegador está en la cadena de User-Agent, que incluye con cada solicitud HTTP.

Puede acceder al User-Agent directamente y analizarlo usted mismo, o puede usar la función de capacidades de navegador incorporada de ASP.NET, que se basa en varios archivos * .browser, expresiones regulares, etc.

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

Otros consejos

Buscan el agente de usuario pasado en la solicitud.

En ASP.NET:

Request.ServerVariables["HTTP_USER_AGENT"font>

El protocolo HTTP proporciona un atributo del encabezado de solicitud llamado User-Agent que el cliente (aquí, los navegadores web) completa con una cadena que identifica la marca, la versión y el sistema operativo del navegador. Al igual que todos los elementos del encabezado HTTP, esta información puede estar "falsificada". o alterado para varios propósitos (por ejemplo, por varias puertas de enlace de privacidad del lado del cliente y similares), pero generalmente es relativamente confiable.

Un ejemplo de dicha cadena de User-Agent es (aquí para un navegador FireFox, Versión 3.5, que se ejecuta en Windows XP)

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

La aplicación receptora puede consultar esta información, junto con otros atributos del encabezado. Aunque los detalles varían de un lenguaje / marco a otro, muchos de estos lenguajes / framworks exponen un modelo de objeto simple que refleja los diversos objetos asociados con el protocolo HTTP. En el caso del encabezado http, esto generalmente proviene de la " Solicitud " (puede tener un nombre diferente) objeto, por lo que acceder al User-Agent puede ser algo así como:

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

o posiblemente

  ClientBrowser = HttpHeader.UserAgent

Editar : en el caso de C # / ASP.NET (edición tardía de la pregunta):

ClientBrowser = Request.ServerVariables("HTTP_USER_AGENT")

Además, aunque puede tener la tentación de usar esta información directamente, también puede confiar en varias bibliotecas que encapsulan los detalles del análisis de las [muchas versiones del] User-Agent para calcular fuera del navegador web en particular e incluso las formas particulares de javascript que se debe enviar a dicho cliente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top