Wat is mijn user agent?
Je user agent is de tekst die je browser meestuurt in de User-Agent-header van elk HTTP-verzoek, en scripts kunnen hem uitlezen als navigator.userAgent. Het parserhulpprogramma vult automatisch de string van je eigen browser in zodra de pagina laadt; deze gids gebruikt één vaste string van Chrome op macOS, zodat de uitleg voor elke lezer hetzelfde blijft.
Uitgewerkt voorbeeld
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
- Browser
- Chrome 120.0.0.0
- Engine
- Blink
- Besturingssysteem
- macOS 10.15.7
- Apparaatklasse
- Desktop
- Apparaat
- Onbekend
- CPU-architectuur
- Onbekend
- Bot / crawler
- Nee
Token-opsplitsing
| Token | Interpretatie |
|---|---|
| Mozilla/5.0 | Een historisch compatibiliteitstoken. Bijna elke browser begint ermee; het betekent niet dat de browser Firefox is. |
| (Macintosh; Intel Mac OS X 10_15_7) | Het platformcommentaar. Chrome en Safari bevriezen de macOS-versie op 10_15_7, dus nieuwere macOS-versies en Macs met Apple silicon sturen dezelfde waarde. |
| AppleWebKit/537.36 | Het enginetoken. De Blink-engine van Chrome is begonnen als fork van WebKit en meldt nog steeds deze vaste waarde. |
| (KHTML, like Gecko) | Een compatibiliteitscommentaar: WebKit stamt af van KHTML, en „like Gecko” werd toegevoegd voor sites die moderne pagina's alleen aan Gecko-browsers serveerden. |
| Chrome/120.0.0.0 | De echte browser en zijn versie. Alleen de hoofdversie (120) is betekenisvol; Chrome stuurt 0.0.0 voor minor, build en patch. |
| Safari/537.36 | Nog een compatibiliteitstoken, zodat sites die naar Safari zoeken Chrome behandelen als browser uit de WebKit-familie. Het betekent niet dat de browser Safari is. |
De parser herkent Chrome 120 op macOS 10.15.7 met de Blink-engine. Zowel de macOS-versie als de afsluitende 0.0.0 zijn bevroren waarden, dus het echte systeem kan nieuwer zijn dan de string aangeeft. De CPU-architectuur blijft onbekend: de parser leest Intel niet als CPU-hint, en Macs met Apple silicon sturen dezelfde tekst.
Belangrijkste regels
- Een user-agentstring is een lijst van product/versie-tokens, gescheiden door spaties, met platformdetails tussen haakjes.
- De meeste tokens bestaan voor compatibiliteit: browsers nemen elkaars tokens over zodat oudere detectiecode blijft werken. Een parser moet dus kijken welke tokens voorkomen en in welke volgorde, niet naar losse woorden.
- Het parserhulpprogramma vult je eigen user agent vanuit je browser in zodra de pagina laadt. Het parseren zelf gebeurt in je browser, niet op een server.
- Browserextensies, privacy-instellingen, apparaatemulatie in de ontwikkelaarstools en in-app-browsers kunnen de user agent wijzigen, dus hij beschrijft mogelijk niet het werkelijke apparaat.
- Om browsers te vergelijken, plak je een string van een ander apparaat of kies je een voorbeeldpreset in het hulpprogramma.