Розбір User-Agent
Визначайте браузер, рушій, ОС і пристрій за рядком User-Agent
Про цей інструмент
Вставте рядок 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 дедалі грубішає. Для розслідування логів і сортування помилок він лишається незамінним; для рішень про можливості користуйтеся визначенням можливостей.
Часті запитання
- Чому кожен 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 потрібен для аналітики, аналізу логів і відтворення помилок, про які повідомили користувачі, — там знати середовище і є суттю справи.