User-Agent-String auslesen
Dieses Werkzeug zerlegt einen User-Agent-String aus einem HTTP-Header in seine Bestandteile: Browser samt Version, Betriebssystem und Gerätetyp, mit einem Hinweis, falls die Zeichenfolge einem bekannten Muster automatisierter Zugriffe entspricht. Es eignet sich für Entwickler und für alle, die Server-Logs oder Support-Anfragen auswerten und dabei technische Angaben schnell verständlich brauchen.
Im Browser ausführen – kostenlos
Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.
Warum Server-Logs oft nur kryptische Zeichenfolgen zeigen
Ein User-Agent-String wie »Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36« liest sich für die meisten Menschen wie Kauderwelsch, enthält aber strukturiert Angaben zu Browser, Version, Betriebssystem und teils Gerätetyp des zugreifenden Systems. Diese Zeichenfolge wird bei jedem Seitenaufruf automatisch mitgesendet und landet unverändert in den Server-Logs, ohne dass die Person, die die Seite gerade besucht, davon überhaupt etwas mitbekommt oder eine Wahl dabei hätte.
Bestandteil für Bestandteil erkannt
Die Zerlegung zeigt Browser und Version, Betriebssystem und, sofern erkennbar, den Gerätetyp – etwa Desktop, Mobilgerät oder Tablet – jeweils getrennt voneinander an, statt der ganzen kryptischen Zeichenfolge in einem Stück. Bekannte Muster automatisierter Zugriffe, etwa von Suchmaschinen-Crawlern oder gängigen Monitoring-Diensten, werden zusätzlich markiert, sodass Sie auf einen Blick erkennen, ob ein Eintrag im Log von einem echten Besucher stammt.
Musterbasiert, nicht unfehlbar
Die Erkennung stützt sich auf bekannte, verbreitete User-Agent-Muster, die regelmäßig aktualisiert werden. Ein bewusst veränderter oder ungewöhnlicher String lässt sich nicht immer eindeutig zuordnen, weil die Angabe im Header technisch frei wählbar ist und keiner Prüfung durch den Browser oder eine sonstige Instanz unterliegt. Ein Ergebnis ist deshalb eine plausible Einordnung anhand bekannter Muster, kein technischer Nachweis der tatsächlichen Software.
Nützlich bei der Auswertung von Zugriffsdaten
Beim Sichten von Server-Logs, Formularabsendungen oder Support-Tickets hilft die Zerlegung, schnell zu erkennen, mit welchem Browser und Gerät ein Zugriff erfolgte, etwa um einen gemeldeten Darstellungsfehler gezielt auf ein bestimmtes System einzugrenzen, statt ihn auf allen denkbaren Browsern nachzustellen. Das spart Zeit bei der Fehlersuche und hilft, ein Problem präzise zu beschreiben, bevor es überhaupt an die Entwicklung weitergegeben wird.
Anwendungsfälle
Einen gemeldeten Darstellungsfehler eingrenzen
Ein Entwickler bei der Schneider IT-Systeme GmbH & Co. KG liest den User-Agent aus einer Fehlermeldung aus und stellt fest, dass das Problem nur bei einer älteren Browser-Version auftritt.
Zugriffe in einem Server-Log sichten
Lukas Fischer prüft auffällige Zeilen in einem Zugriffsprotokoll und erkennt anhand des User-Agent, dass ein Teil der Zugriffe von einem bekannten Suchmaschinen-Crawler stammt.
Support-Anfrage zu einem Anzeigefehler
Anna Hoffmann bittet einen Kunden um den User-Agent-String aus dessen Browser, um das gemeldete Problem gezielt auf dem passenden Gerätetyp nachzustellen.
Häufige Fragen
Ist das Auslesen kostenlos?
Ja, es läuft direkt im Browser, kostenlos, ohne Anmeldung und ohne Limit.
Verlässt der eingegebene String meinen Browser?
Nein. Die Zerlegung findet vollständig in Ihrem Browser statt.
Erkennt das Werkzeug auch Suchmaschinen-Crawler?
Bekannte, verbreitete Crawler-Muster werden erkannt und markiert. Für unbekannte oder bewusst verschleierte Zugriffe gibt es keine Garantie.
Kann der User-Agent gefälscht sein?
Ja, die Angabe wird vom zugreifenden System selbst gesendet und lässt sich beliebig verändern. Das Werkzeug liest nur aus, was übermittelt wurde, ohne das zu überprüfen.
Woher bekomme ich den User-Agent-String eines Besuchers?
Er steht in den Server-Logs Ihrer Website oder lässt sich bei einem gemeldeten Problem direkt beim Nutzer erfragen.
Kann ich viele Einträge aus einem Log auf einmal auslesen?
Im Browser lesen Sie einen String nach dem anderen aus. Für ganze Log-Dateien steht dieselbe Funktion über die API zur Verfügung.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/verify/user-agent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/verify/user-agent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/user-agent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/user-agent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/user-agent", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"items": [
"valor-1",
"valor-2"
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.user_agent",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |