User-Agent-parser
Herken browser, engine, besturingssysteem en apparaat uit een User-Agent-string
Over deze tool
Plak een User-Agent-string uit een logregel, bugrapport of analytics-export en krijg hem ontcijferd: browser en versie, renderengine, besturingssysteem, apparaattype en CPU-architectuur. De parser is ua-parser-js, dezelfde bibliotheek achter talloze analytics-pijplijnen, hier lokaal draaiend op jouw string.
User-Agent-strings zijn archeologische vindplaatsen — elke string beweert nog steeds Mozilla/5.0 te zijn, Chrome beweert Safari te zijn, Safari beweert KHTML te zijn, en de echte identiteit schuilt in de latere tokens. Een parser verslaat turen: hij weet dat “CriOS” Chrome op iOS betekent en dat Edge zich achter “Edg/” verstopt.
Let op de richting waarin het gaat: browsers bevriezen en versimpelen hun UA-strings (en Chromium levert in plaats daarvan UA Client Hints), dus versiedetail uit alleen de UA wordt steeds grover. Voor logforensiek en bugtriage blijft het onmisbaar; voor beslissingen over functionaliteit gebruik je feature detection.
Veelgestelde vragen
- Waarom begint elke User-Agent met Mozilla/5.0?
- Compatibiliteitstoneel uit de jaren negentig dat nooit is opgehouden: servers zochten naar “Mozilla” om moderne pagina’s te serveren, dus beweerde elke nieuwe browser dat te zijn, en elke volgende browser deed zich voor als zijn voorgangers. Het voorvoegsel is nu betekenisloze traditie.
- Kan ik de OS-versie in een UA-string vertrouwen?
- Elk jaar minder. macOS bevroor zijn UA-versie op 10_15_7, Windows 11 meldt zich als Windows NT 10.0, en browsers met gereduceerde UA vergroven versies met opzet. Behandel OS-versies uit de UA als benadering; gebruik UA Client Hints waar je de client zelf beheert.
- Wat betekent “like Gecko” of “KHTML, like Gecko”?
- Nog meer lagen imitatie: WebKit stamt af van KHTML en wilde dat pagina’s die speciaal voor Gecko (de engine van Firefox) waren geschreven zouden werken, dus voegde het “like Gecko” toe. Elke WebKit-/Blink-browser draagt de zin tot op vandaag.
- Moet ik UA-parsing gebruiken voor feature detection?
- Nee — sniffing breekt zodra er een nieuwe browserversie uitkomt. Detecteer de functie zelf (if ("clipboard" in navigator)). UA-parsing is voor analytics, loganalyse en het reproduceren van door gebruikers gemelde bugs, waar de omgeving kennen juist het hele punt is.