§

URL

§

URL-Bestandteile

Vollständige URL (href)
Protokoll
Benutzername
Passwort
Host
Hostname
Port
Pfadname
Suche (roh)
Hash (Fragment)
Origin
§

Query-Parameter

Schlüssel Wert (roh) Dekodierter Wert

Keine Query-Parameter in dieser URL

Das BSI dokumentiert in seinen CERT-Bund-Phishing-Warnungen regelmäßig, wie Angreifer gefälschte Query-Parameter wie utm_campaign oder redirect in Behörden-Imitat-Links einbetten, um Nutzer zu täuschen. Österreichische E-Government-Portale wie das Unternehmensserviceportal (USP) und der Schweizer CH-Login übergeben Sitzungstoken als Query-Parameter — Datenschutzbeauftragte nach DSGVO und DSG prüfen dabei, ob diese Parameter Personendaten transportieren. Wer gov.de-Portale nach BMI-Vorgaben für Bürgerportale testet, stößt ebenfalls auf Query-Parameter-Konventionen wie ?sprache= oder ?serviceID=. Mit diesem browserinternen Parser lassen sich alle diese Parameter einzeln zerlegen und prüfen, ohne dass die URL einen Drittserver passiert.

Wie die URL-Analyse funktioniert

Der Parser basiert auf dem WHATWG-URL-Standard — demselben Algorithmus, den der Browser für jedes href verwendet. Die Zeichenkette wird dem nativen URL-Konstruktor übergeben, und jede Komponente wird als Eigenschaft ausgelesen.

  1. Eingabe validieren. Eine leere Zeichenkette erzeugt einen Hinweis auf fehlende Eingabe. Andernfalls wird der Text an new URL(text) übergeben; ein TypeError bedeutet, dass die Zeichenkette keine gültige absolute URL ist.
  2. Strukturelle Komponenten auslesen. Aus dem URL-Objekt werden protocol, username, password, host, hostname, port, pathname, search, hash und origin ausgelesen. Jede Komponente erscheint in einer eigenen Zeile, damit sie einzeln kopiert werden kann.
  3. Query-String durchlaufen. Mit url.searchParams.entries() wird für jeden Schlüssel eine Tabellenzeile erzeugt. Der Rohwert erscheint neben decodeURIComponent(value), sodass prozentkodierte Inhalte (Leerzeichen, Pluszeichen, Unicode) im Klartext lesbar sind.
  4. Auf Wunsch neu aufbauen. Beliebige Zellen bearbeiten, Zeilen löschen oder neue Parameter hinzufügen — dann auf URL aus Teilen aufbauen klicken. Das Tool konstruiert aus den Änderungen ein neues URL-Objekt und schreibt das Ergebnis zurück in das Eingabefeld.
  5. Live-Modus. Den Live-Modus aktivieren, und jeder Tastendruck analysiert die URL neu — mit 150 ms Entprellung. Praktisch beim Einfügen von Log-Fragmenten, wenn sofortiges Feedback gewünscht ist.

Warum eine URL im Browser analysieren

  • Nichts verlässt den Tab. URLs enthalten Token, Sitzungs-IDs, OAuth-State und signierte Query-Parameter, die nicht an Drittdienste gelangen sollen. Dieser Parser verwendet denselben URL-Algorithmus, den der Browser lokal ausführt — kein Upload, kein Netzwerkaufruf.
  • Zeigt dasselbe wie der eigene Code. Node.js, Deno, moderne Browser und Cloudflare Workers verwenden alle die WHATWG-URL-Implementierung. Eine URL hier zu analysieren liefert dieselbe Komponentenaufteilung wie ein new URL(input)-Aufruf in der Produktion.
  • Query-Strings menschenlesbar darstellen. Roh- und dekodierte Werte stehen nebeneinander, sodass ein q=hallo%20welt-Paar sowohl die Rohbytes als auch das lesbare hallo welt auf einen Blick zeigt. Kein mentales URL-Dekodieren erforderlich.
  • Rundlauf-Bearbeitung. Einen Tracking-Parameter entfernen, einen Tippfehler im Pfad korrigieren, einen Port ändern — und die URL neu aufbauen. Die Ausgabe durchläuft erneut den URL-Konstruktor, sodass Ungültiges sichtbar wird, bevor die URL kopiert wird.

Häufige Anwendungsfälle

URL-Analyse taucht täglich in Entwickler-, Sicherheits- und Analytics-Workflows auf, wenn eine URL mehr als nur ein Link ist.

  • API-Endpunkte debuggen: Basis-URL, Pfad und Query-Parameter prüfen, bevor eine curl- oder Postman-Anfrage gesendet wird.
  • Tracking-Parameter prüfen: Alle UTM-, gclid-, fbclid- oder Kampagnenschlüssel einer Landing-Page-URL auflisten und entscheiden, welche behalten werden.
  • Affiliate- und Partner-Links prüfen: Einen Deeplink einfügen, Ziel-Host und eingebettetes Redirect-Ziel bestätigen, bevor veröffentlicht wird.

Ein konkretes Beispiel

https://beispiel.de/suche?q=hallo%20welt&lang=de in das Eingabefeld einfügen. Protokoll liest https:, Hostname liest beispiel.de, Pfadname liest /suche, und Suche liest ?q=hallo%20welt&lang=de. Die Query-Tabelle zeigt zwei Zeilen: q mit dem Rohwert hallo%20welt und dem dekodierten Wert hallo welt, dann lang mit dem Roh- und dekodierten Wert de. Auf Entfernen bei der Zeile lang klicken, dann URL aus Teilen aufbauen — das Eingabefeld aktualisiert sich zu https://beispiel.de/suche?q=hallo%20welt.

FAQ

Was ist ein URL-Parser?

Ein URL-Parser nimmt eine URL-Zeichenkette und zerlegt sie in benannte Komponenten: Protokoll (https), Benutzerinfo (Benutzername, Passwort), Host (Hostname plus optionaler Port), Pfad, Query-String und Fragment. Er dekodiert außerdem jeden Query-Parameter, sodass prozentkodierte Werte (wie %20 für ein Leerzeichen) lesbar sind. Dieser Parser verwendet den WHATWG-URL-Standard — denselben, den der Browser zum Laden einer Seite verwendet.

Was ist der Unterschied zwischen Host und Hostname?

Hostname ist nur die Domain (oder IP-Adresse) — bei beispiel.de:8080 ist der Hostname beispiel.de. Host ist Hostname plus Port, wenn ein Nicht-Standard-Port vorhanden ist; dieselbe URL hat also einen Host von beispiel.de:8080. Bei URLs mit Standard-Ports (443 für https, 80 für http) sind Host und Hostname identisch.

Erfolgt die Dekodierung automatisch?

Strukturelle Komponenten (Protokoll, Hostname, Port, Pfadname) werden direkt vom URL-Objekt ausgelesen, ohne zusätzliche Dekodierung — der URL-Konstruktor normalisiert sie bereits. Query-Werte werden zweimal angezeigt: die rohe prozentkodierte Zeichenkette, wie sie in search erscheint, und der dekodierte Wert von decodeURIComponent. So kann jeweils die Form kopiert werden, die das nachgelagerte Tool erwartet.

Kann ich die URL bearbeiten und neu aufbauen?

Ja. Jede Komponentenzelle und jede Query-Parameter-Zelle ist bearbeitbar. Query-Zeilen lassen sich mit den Schaltflächen Hinzufügen und Entfernen verwalten; anschließend auf URL aus Teilen aufbauen klicken. Das Tool führt die Änderungen erneut durch den URL-Konstruktor und schreibt das Ergebnis in das Eingabefeld — wenn die Änderungen eine ungültige URL ergeben, erscheint dieselbe Fehlermeldung wie bei new URL() im eigenen Code.

URL-Analyse ist eine der kleinen Aufgaben, die jeder Webentwickler jede Woche erledigt. Sie im Browser mit demselben Algorithmus durchzuführen, den der Produktionscode verwendet, hält die Arbeit schnell und die Daten auf dem eigenen Rechner.