Как веб-сайты узнают, какой браузер их посещает

StackOverflow https://stackoverflow.com/questions/1811658

Вопрос

Как веб-сайты узнают, какой браузер их посещает

как я могу это сделать

Вы даете ответ за asp.net c#

Это было полезно?

Решение

Браузер сообщает серверу, какой это браузер, в строке User-Agent, которую он включает в каждый HTTP-запрос.

Вы можете получить доступ к User-Agent напрямую и проанализировать его самостоятельно или использовать встроенную функцию браузера ASP.NET, которая использует несколько файлов * .browser, регулярные выражения и т. д.

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

Другие советы

Они ищут пользовательский агент, переданный в запросе.

В ASP.NET:

Request.ServerVariables["HTTP_USER_AGENT"]

Протокол HTTP предоставляет атрибут заголовок запроса называется User-Agent , который клиент (в данном случае веб-браузеры) заполняет строкой, идентифицирующей марку, версию и операционную систему браузера. Как и все элементы заголовка HTTP, эта информация вполне может быть «поддельной». или изменены для различных целей (например, с помощью различных шлюзов конфиденциальности на стороне клиента и т. д.), но обычно это относительно надежно.

Пример такой строки User-Agent (здесь для браузера FireFox версии 3.5, работающей под Windows XP)

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

Эта информация, наряду с другими атрибутами из заголовка, может запрашиваться принимающим приложением. Хотя специфика варьируется от одного языка / фреймворка к следующему, могут из этих языков / фреймворков представлять простую объектную модель, которая отражает различные объекты, связанные с протоколом HTTP. В случае заголовка http это обычно происходит от " запроса " (может называться по-разному) объект, поэтому доступ к User-Agent может выглядеть примерно так:

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

или, возможно,

  ClientBrowser = HttpHeader.UserAgent

Изменить . В случае C # / ASP.NET (позднее редактирование вопроса):

ClientBrowser = Request.ServerVariables("HTTP_USER_AGENT")

Кроме того, хотя у вас может возникнуть желание использовать эту информацию напрямую, вы также можете полагаться на различные библиотеки, которые инкапсулируют детали анализа [очень многих версий] строк User-Agent для расчета конкретный веб-браузер и даже конкретные формы javascript такой клиент должен быть отправлен.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top