WorkerNavigator: свойство userAgent
Базовая Широко поддерживается
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Примечание: Эта функция доступна только в Веб-воркерах.
Это чтение-только свойство возвращает строку пользовательского агента текущего браузера.
Примечание: Спецификация требует от браузеров предоставлять как можно меньше информации через это поле. Не предполагайте, что значение этого свойства останется неизменным в будущих версиях одного и того же браузера. Старайтесь вообще не использовать его или использовать только для текущих и прошлых версий браузера. Новые браузеры могут начать использовать тот же UA или его часть, что и более старый браузер: у вас нет гарантии, что агент браузера действительно тот, который рекламируется этим свойством.
Также имейте в виду, что пользователи браузера могут изменить значение этого поля по своему желанию (подмена UA).
Определение браузера на основе обнаружения строки пользовательского агента является ненадежным и не рекомендуется, поскольку строка пользовательского агента настраивается пользователем. Например:
- В Firefox вы можете изменить предпочитаемую
general.useragent.overrideвabout:config. Некоторые расширения Firefox это делают; однако, это изменяет только HTTP-заголовок, который отправляется, и не влияет на определение браузера, выполняемое кодом JavaScript. - Opera 6+ позволяет пользователям задавать строку идентификации браузера через меню.
Значение
Строка, определяющая полную строку пользовательского агента, предоставляемую браузером, как в HTTP заголовках, так и в ответ на это и другие связанные методы объекта WorkerNavigator.
Строка пользовательского агента построена на формальной структуре, которую можно разбить на несколько фрагментов информации. Каждый из этих фрагментов информации поступает из других свойств навигатора, которые также могут быть заданы пользователем. Браузеры на основе Gecko соответствуют следующей общей структуре:
userAgent = appCodeName/appVersion number (Platform; Security; OS-or-CPU; Localization; rv: revision-version-number) product/productSub Application-Name Application-Name-version
Примеры
alert(navigator.userAgent); // alerts "Mozilla/5.0 (Windows; U; Win98; en-US; rv:0.9.2) Gecko/20010725 Netscape6/6.1"
Спецификации
| Спецификация |
|---|
| HTML # dom-navigator-useragent-dev |
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
userAgent |
4 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 5 | 1.0 | 4.4 |
См. также
-
User-AgentHTTP-заголовок
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerNavigator/userAgent