Skip to main content
CheckTown
Dev Tools

User Agent Parsing: How to Read Browser and Device Information

Opublikowano 5 min czytania
W tym artykule

Czym jest łańcuch User Agent?

Łańcuch User Agent to identyfikator tekstowy, który przeglądarki i klienty HTTP wysyłają z każdym żądaniem. Informuje serwer, jaka przeglądarka, system operacyjny i urządzenie wykonuje żądanie. Na przykład Chrome w systemie Windows wysyła łańcuch zawierający wersję przeglądarki, silnik renderowania i wersję systemu operacyjnego.

Łańcuchy User Agent stosują luźno zdefiniowany format, który z czasem stał się bardziej złożony. Współczesne łańcuchy często zawierają tokeny kompatybilności ze starszych przeglądarek, co utrudnia ręczną analizę. Dedykowany parser wyodrębnia ustrukturyzowane dane z tego chaotycznego tekstu.

Jak działa analiza User Agent

Parser User Agent rozkłada surowy łańcuch na ustrukturyzowane komponenty za pomocą dopasowywania wzorców i baz danych znanych sygnatur. Wynikiem jest czysty obiekt z danymi o przeglądarce, systemie operacyjnym, urządzeniu i silniku.

  • Wykrywanie przeglądarki — identyfikuje nazwę i wersję przeglądarki, dopasowując znane tokeny, takie jak Chrome/, Firefox/ lub Safari/
  • Identyfikacja systemu operacyjnego — wyodrębnia system operacyjny i jego wersję z tokenów platformy, takich jak Windows NT 10.0 lub Mac OS X
  • Klasyfikacja urządzenia — określa, czy klient to komputer stacjonarny, urządzenie mobilne, tablet czy bot na podstawie specyficznych markerów

Wypróbuj za darmo — bez rejestracji

Przeanalizuj łańcuch User Agent →

Kiedy stosować analizę User Agent

Dane User Agent pomagają zrozumieć odbiorców i dostosować aplikację do różnych środowisk.

  • Analityka — śledź rozkład przeglądarek i systemów operacyjnych wśród użytkowników, aby priorytetyzować testy i wsparcie
  • Adaptacyjne serwowanie — dostarczaj zoptymalizowane zasoby (obrazy, skrypty) na podstawie wykrytego typu urządzenia lub możliwości przeglądarki
  • Wykrywanie botów — identyfikuj crawlery, scrapery i narzędzia automatyczne po ich sygnaturach User Agent w celu ograniczenia szybkości lub serwowania innej treści

Często zadawane pytania

Czy łańcuchy User Agent można sfałszować?

Tak. Każdy klient HTTP może wysłać dowolny łańcuch User Agent. Rozszerzenia przeglądarki i narzędzia deweloperskie czynią spoofing trywialnym. Z tego powodu dane User Agent należy wykorzystywać do analityki i progresywnego ulepszania, a nie do decyzji dotyczących bezpieczeństwa czy kontroli dostępu.

Czym są Client Hints i czy zastępują User Agent?

Client Hints (nagłówki Sec-CH-UA) to nowsza, ustrukturyzowana alternatywa zaproponowana przez przeglądarki oparte na Chromium. Dostarczają dane o przeglądarce, platformie i urządzeniu w oddzielnych nagłówkach. Jednak adopcja jest niepełna — Firefox i Safari mają ograniczone wsparcie — więc łańcuchy User Agent pozostają uniwersalnym rozwiązaniem awaryjnym.

Jak niezawodnie wykryć urządzenia mobilne?

Najbardziej niezawodne podejście łączy analizę User Agent z wykrywaniem funkcji. Przeanalizuj łańcuch UA pod kątem słów kluczowych mobilnych (Mobile, Android, iPhone) i również sprawdź rozmiar ekranu lub obsługę dotyku przez JavaScript. Żadna metoda sama w sobie nie jest dokładna w 100%, ale razem obejmują zdecydowaną większość przypadków.

Powiązane narzędzia