onlinetools.dev

Разбор User-Agent

Определяйте браузер, движок, ОС и устройство по строке User-Agent

Работает локально
loading…
Об этом инструменте

Вставьте строку User-Agent из строки лога, баг-репорта или выгрузки аналитики и получите её расшифровку: браузер и версия, движок рендеринга, операционная система, тип устройства и архитектура процессора. Парсер — ua-parser-js, та самая библиотека, стоящая за бесчисленными аналитическими пайплайнами, работающая локально с вашей строкой.

Строки User-Agent — это археологические раскопки: каждая до сих пор представляется как Mozilla/5.0, Chrome называет себя Safari, Safari называет себя KHTML, а настоящая личность прячется в поздних токенах. Парсер лучше прищуривания: он знает, что «CriOS» означает Chrome на iOS, а Edge скрывается за «Edg/».

Обратите внимание на направление движения: браузеры замораживают и сокращают UA-строки (а Chromium вместо этого поставляет UA Client Hints), поэтому детализация версий по одному UA всё грубее. Для криминалистики логов и разбора багов он остаётся незаменимым; для решений о функциональности используйте feature detection.

Частые вопросы

Почему каждый User-Agent начинается с Mozilla/5.0?
Театр совместимости из 1990-х, который так и не закончился: серверы искали «Mozilla», чтобы отдавать современные страницы, поэтому каждый новый браузер объявлял себя ею, а каждый следующий выдавал себя за предшественников. Теперь этот префикс — бессмысленная традиция.
Можно ли доверять версии ОС в строке UA?
С каждым годом всё меньше. macOS заморозила свою версию в UA на 10_15_7, Windows 11 представляется как Windows NT 10.0, а браузеры с сокращённым UA намеренно огрубляют версии. Считайте версии ОС из UA приблизительными; используйте UA Client Hints там, где контролируете клиент.
Что означает «like Gecko» или «KHTML, like Gecko»?
Ещё слои маскировки: WebKit произошёл от KHTML и хотел, чтобы страницы с особыми ветками для Gecko (движка Firefox) работали, поэтому добавил «like Gecko». Каждый браузер на WebKit/Blink несёт эту фразу по сей день.
Стоит ли использовать разбор UA для определения возможностей?
Нет — сниффинг ломается, как только выходит новая версия браузера. Определяйте саму возможность (if ("clipboard" in navigator)). Разбор UA — для аналитики, анализа логов и воспроизведения багов из отчётов пользователей, где знание окружения и есть суть.
Похожие инструменты