So nutzt du: URL kodieren / dekodieren
- Wähle einen Modus: Komponente kodieren für einen einzelnen Query-Wert oder Pfadabschnitt, Gesamte URL kodieren für eine vollständige Adresse oder Dekodieren.
- Tippe oder füge links in das Feld ein; das Ergebnis aktualisiert sich beim Tippen.
- Nutze Leerzeichen als + für eine Kodierung im Stil von HTML-Formularen oder Jede Zeile separat, um eine Liste zu verarbeiten.
- Füge eine beliebige URL in den URL-Parser ein, um Host, Pfad und eine dekodierte Tabelle der Query-Parameter zu sehen.
Was ist URL-Kodierung?
URL-Kodierung, formal Percent-Encoding (RFC 3986), ersetzt Zeichen, die in einer URL nicht erlaubt sind oder eine besondere Bedeutung haben, durch ein % gefolgt von zwei hexadezimalen Ziffern. Ein Leerzeichen wird zu %20, & wird zu %26, und Nicht-ASCII-Zeichen werden zuerst in UTF-8-Bytes umgewandelt und dann Byte für Byte kodiert: é → %C3%A9, € → %E2%82%AC. Ohne Kodierung würde ein Wert wie Tom & Jerry in einem Query-String in zwei Parameter zerfallen.
encodeURIComponent vs. encodeURI
JavaScript bietet zwei Funktionen, und die falsche zu wählen ist ein klassischer Fehler:
| Zeichen | encodeURIComponent | encodeURI |
|---|---|---|
| Leerzeichen | %20 | %20 |
/ ? # & = : @ + , ; $ | kodiert | unverändert übernommen |
A–Z a–z 0–9 - _ . ! ~ * ' ( ) | unverändert | unverändert |
é, Emoji, andere Nicht-ASCII-Zeichen | UTF-8-prozentkodiert | UTF-8-prozentkodiert |
Verwende encodeURIComponent („Komponente kodieren“) für alles, was du in eine URL einfügst – einen Query-Parameterwert, einen Pfadabschnitt, eine Weiterleitungs-URL, die als Parameter übergeben wird. Verwende encodeURI („Gesamte URL kodieren“) nur für eine vollständige URL, die lediglich Leerzeichen oder Nicht-ASCII-Zeichen enthält, da es die strukturellen Zeichen : / ? # & unangetastet lässt.
%20 oder +?
Im Pfad einer URL muss ein Leerzeichen als %20 geschrieben werden. In Query-Strings, die von HTML-Formularen gesendet werden (application/x-www-form-urlencoded), werden Leerzeichen als + geschrieben. Die meisten Server akzeptieren beides im Query-String, ein echtes Pluszeichen muss dann aber als %2B gesendet werden. Der Decoder behandelt + standardmäßig als Leerzeichen; deaktiviere die Option, wenn deine Daten echte Pluszeichen enthalten.
Dekodierungsfehler
Auf ein % müssen genau zwei Hex-Ziffern folgen, und mehrbytige UTF-8-Zeichen benötigen alle ihre Bytes. Das einfache decodeURIComponent() wirft beim ersten fehlerhaften Sequenz einen URIError: malformed URI sequence; dieses Tool dekodiert alles Gültige, lässt fehlerhafte Teile unverändert und zeigt dir an, welche das sind. Doppelt kodierte Strings (%2520) werden nach einem Durchlauf zu %20 – dekodiere noch einmal, um das Leerzeichen zu erhalten.
Aufbau einer URL
https://user@shop.example.com:8443/search?q=shoes#results besteht aus dem Schema (https:), optionalen Anmeldedaten, Host, Port, Pfad, Query-String und Fragment. Der Parser oben nutzt die Standard-URL-API des Browsers (WHATWG URL Standard), dieselbe, die auch fetch() verwendet. Baust du Kampagnenlinks? Probiere den UTM Builder. Musst du stattdessen Binärdaten kodieren? Nutze Base64.
Auch gesucht als: url kodieren, url dekodieren, percent-encoding, urlencode, urldecode, encodeuricomponent, query-string decoder, url parser.
Passende Tools zu: URL kodieren / dekodieren
- HTML-Entity-Encoder — Maskiere < > & ", damit Text sicher in HTML angezeigt werden kann, wandle Akzente und Symbole in benannte oder numerische Entities um oder decodiere HTML mit Entities zurück in Klartext.
- Slug-Generator — Wandle jeden Titel in einen sauberen, kleingeschriebenen URL-Slug um – mit korrekter Transliteration von Akzenten, Umlauten und kyrillischer Schrift, optionalem Entfernen von Stoppwörtern und einem Massenmodus für ganze Listen.
- JWT-Decoder — Füge ein JSON-Web-Token ein, um dessen Header und Payload zu überprüfen, das Ablaufdatum zu ermitteln und die Signatur zu verifizieren.
- Morsezeichen-Übersetzer — Gib Text ein, um den Morsecode zu erhalten, oder füge Punkte und Striche ein, um sie zu entschlüsseln – dann hör dir den Code an, sieh zu, wie er blinkt, und lade die Audiodatei herunter.
Häufige Fragen
Wann sollte ich encodeURIComponent statt encodeURI verwenden?
/ ? & # = nicht kodiert.Warum ist ein Leerzeichen manchmal %20 und manchmal +?
%20 ist die nach RFC 3986 gültige Kodierung, die überall in einer URL funktioniert. + bedeutet nur in formularkodierten Query-Strings (application/x-www-form-urlencoded) ein Leerzeichen, wie es HTML-Formulare senden.Was bedeutet „URIError: malformed URI sequence“?
%, auf das nicht zwei Hex-Ziffern folgen, oder eine unvollständige UTF-8-Byte-Sequenz. Dieser Decoder lässt solche Teile unverändert und listet sie auf, statt abzubrechen.Welche Zeichen müssen nie kodiert werden?
A–Z a–z, Ziffern 0–9 sowie - _ . ~. Alle anderen Zeichen sind entweder für die URL-Syntax reserviert oder müssen prozentkodiert werden.