Parser User-Agent
Rozpoznaj przeglądarkę, silnik, system i urządzenie z ciągu User-Agent
O tym narzędziu
Wklej ciąg User-Agent z linii logu, zgłoszenia błędu albo eksportu z analityki i dostań go rozszyfrowanego: przeglądarka i wersja, silnik renderujący, system operacyjny, typ urządzenia i architektura procesora. Parserem jest ua-parser-js, ta sama biblioteka, która stoi za niezliczonymi potokami analitycznymi, uruchamiana lokalnie na Twoim ciągu.
Ciągi User-Agent są stanowiskami archeologicznymi — każdy nadal twierdzi, że jest Mozilla/5.0, Chrome podaje się za Safari, Safari za KHTML, a prawdziwa tożsamość kryje się w dalszych tokenach. Parser bije mrużenie oczu: wie, że „CriOS” oznacza Chrome na iOS, a Edge chowa się za „Edg/”.
Zwróć uwagę na kierunek zmian: przeglądarki zamrażają i skracają ciągi UA (a Chromium wysyła zamiast tego UA Client Hints), więc szczegółowość wersji z samego UA jest coraz zgrubniejsza. Do analizy logów i triage’u błędów pozostaje niezastąpiony; do decyzji o funkcjach używaj wykrywania funkcji.
Często zadawane pytania
- Dlaczego każdy User-Agent zaczyna się od Mozilla/5.0?
- To teatrzyk zgodności z lat 90., który nigdy się nie skończył: serwery szukały słowa „Mozilla”, żeby podać nowoczesną stronę, więc każda nowa przeglądarka twierdziła, że nią jest, a kolejne podszywały się pod poprzedniczki. Dziś ten przedrostek to już tylko bezsensowna tradycja.
- Czy mogę ufać wersji systemu w ciągu UA?
- Z roku na rok coraz mniej. macOS zamroził swoją wersję w UA na 10_15_7, Windows 11 przedstawia się jako Windows NT 10.0, a przeglądarki ze skróconym UA celowo zaokrąglają wersje. Traktuj wersję systemu z UA jako przybliżoną; tam, gdzie kontrolujesz klienta, korzystaj z UA Client Hints.
- Co znaczy „like Gecko” albo „KHTML, like Gecko”?
- Kolejne warstwy podszywania: WebKit wywodzi się z KHTML-a i chciał, by działały strony traktujące specjalnie Gecko (silnik Firefoksa), więc dopisał „like Gecko”. Każda przeglądarka na WebKicie i Blinku nosi tę frazę do dziś.
- Czy używać parsowania UA do wykrywania funkcji?
- Nie — sniffing psuje się w chwili wydania nowej wersji przeglądarki. Wykrywaj samą funkcję (if ("clipboard" in navigator)). Parsowanie UA służy analityce, analizie logów i odtwarzaniu błędów zgłoszonych przez użytkowników, gdzie poznanie środowiska jest właśnie celem.