MiServe DevTools

Ihre Sticker

Heften Sie hier Tools an. Sie werden in diesem Browser gespeichert.

User-Agent-Parser

Zerlegen Sie einen User-Agent-String in Browser, Rendering-Engine, Betriebssystem und Gerätetyp, und sehen Sie, was Ihr eigener Browser über sich meldet.

Browser oder Client
Rendering-Engine
Betriebssystem
Gerätetyp
CPU-Architektur, sofern im String angegeben

Was dieser Browser über sich meldet

Diese Werte stammen aus dem Browser, den Sie gerade verwenden, nicht aus dem String oben. Sie verlassen diese Seite nicht.

Eigenschaften des Browsers, den Sie verwenden
EigenschaftWert
Brands (Client Hints)
Plattform (Client Hints)
Sprachen
Bildschirmgröße
Device Pixel Ratio
Zeitzone
Cookies
WebAssembly
Web Crypto

Läuft in Ihrem Browser. Nichts, was Sie einfügen, wird hochgeladen.

Über dieses Tool

Was ein User-Agent-String ist

Fast jede HTTP-Anfrage enthält einen User-Agent-Header, in dem sich der Client selbst benennt. Browser haben jahrzehntelang die Namen ihrer Konkurrenten hinzugefügt, damit sie auch von Websites bedient werden, die für einen dieser Konkurrenten geschrieben wurden: Deshalb beginnt der String von Chrome mit Mozilla/5.0, nennt AppleWebKit, KHTML, like Gecko und Safari, und deshalb senden Edge und Opera den String von Chrome mit angehängtem Edg/ bzw. OPR/.

Ein Parser muss daher in einer festen Reihenfolge prüfen, vom spezifischsten Token zum allgemeinsten. Dieses Tool sucht zuerst nach Bots und HTTP-Bibliotheken, dann nach Browsern mit eigenem Token und erst zuletzt nach Chrome und Safari, deren Tokens viele andere Browser wiederholen.

Warum Chromium den Großteil eingefroren hat

Der String geht mit jeder Anfrage an jeden Server, und seine Details halfen beim Fingerprinting von Benutzern. Chrome hat ihn deshalb reduziert, und andere Chromium-basierte Browser sind gefolgt. Die Version wird jetzt als 131.0.0.0 gesendet, wobei nur die Hauptversion echt ist, und der Plattformteil ist ein fester Wert wie Windows NT 10.0; Win64; x64 oder Android 10; K, unabhängig vom tatsächlichen System.

Eine Website, die die Details braucht, muss sie über User-Agent Client Hints anfordern: die Request-Header Sec-CH-UA und navigator.userAgentData in JavaScript. Die Tabelle unter dem Ergebnis zeigt diese Werte, sofern der Browser, den Sie verwenden, sie bereitstellt.

Feature Detection ist die bessere Wahl

Da der String teilweise eingefroren ist, andere Browser imitiert und vom Client beliebig gesetzt werden kann, eignet er sich schlecht, um zu entscheiden, welcher Code laufen soll. Prüfen Sie stattdessen das Feature selbst: 'share' in navigator in JavaScript oder @supports in CSS. Die Antwort stimmt dann auch für Browser, von denen Sie nie gehört haben, und für Versionen, die es noch gar nicht gibt.

Sinnvoll ist das Auslesen des Strings weiterhin für Statistiken, um in einem Log Crawler von Menschen zu unterscheiden und um einen Bug in einer bestimmten, bekannten Browserversion zu umgehen.

Fragen

Warum endet meine Chrome-Version auf .0.0.0?

Chrome und andere Chromium-basierte Browser reduzieren den User-Agent-String, um Fingerprinting zu erschweren. Gesendet wird nur die Hauptversion; Neben-, Build- und Patch-Nummer werden durch Nullen ersetzt. Die vollständige Version ist über User-Agent Client Hints verfügbar.

Lässt sich Brave am User-Agent-String von Chrome unterscheiden?

Nein. Brave sendet absichtlich denselben String wie Chrome, ein Parser kann also nur sagen, dass es sich um einen Chromium-basierten Browser handelt. Dasselbe gilt für jeden Browser, der kein eigenes Token hinzufügt.

Warum meldet mein Mac macOS 10.15.7?

Safari, Chrome und Firefox haben die macOS-Version im String bei 10.15 eingefroren, daher melden auch alle späteren macOS-Versionen diese Nummer. Auf Macs mit Apple Silicon steht im String außerdem „Intel“.

Kann ein User-Agent-String gefälscht werden?

Ja. Jeder Client kann einen beliebigen String senden, und viele Bots senden den String eines normalen Browsers. Treffen Sie darauf keine Sicherheitsentscheidung. Um einen Crawler wie den Googlebot zu bestätigen, prüfen Sie die Adresse, von der die Anfrage kam, so wie es sein Betreiber dokumentiert.

Wird der eingefügte String an einen Server gesendet?

Nein. Er wird per JavaScript in Ihrem Browser-Tab ausgewertet, und das Tool stellt damit keine Netzwerkanfrage.

Weitere Tools in Netzwerk