URL kodieren und dekodieren
URL kodieren und dekodieren: Sonderzeichen, Umlaute und Leerzeichen in Prozentkodierung umwandeln und zurück, wahlweise wie encodeURIComponent, encodeURI oder als Formular mit +.
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
| Zeichen | encodeURIComponent | encodeURI | Formular |
|---|---|---|---|
| Leerzeichen | %20 | %20 | + |
| ä | %C3%A4 | %C3%A4 | %C3%A4 |
| & | %26 | & | %26 |
| / | %2F | / | %2F |
| ? | %3F | ? | %3F |
| = | %3D | = | %3D |
| # | %23 | # | %23 |
| + | %2B | + | %2B |
| € | %E2%82%AC | %E2%82%AC | %E2%82%AC |
URL kodieren: welche Variante wofür
In URLs sind nur wenige Zeichen erlaubt. Alles andere, also Leerzeichen, Umlaute und Zeichen mit Sonderbedeutung wie &, ? oder #, muss mit der Prozentkodierung geschrieben werden: Das Zeichen wird in UTF-8-Bytes zerlegt und jedes Byte als % mit zwei Hex-Ziffern notiert. Aus „ü“ wird so %C3%BC. Mit diesem Werkzeug können Sie eine URL kodieren, etwa für einen Link mit Suchbegriff, oder eine URL dekodieren, um einen unlesbaren Link aus einer E-Mail oder einem Log zu verstehen.
Entscheidend ist, was Sie kodieren. Für einen einzelnen Parameterwert nehmen Sie encodeURIComponent: Es kodiert auch / ? & = und #, damit der Wert die URL nicht zerbricht. Für eine ganze Adresse nehmen Sie encodeURI, das diese Zeichen stehen lässt. HTML-Formulare senden Daten als application/x-www-form-urlencoded, dort wird ein Leerzeichen zum Pluszeichen. Der URL Decoder liest + deshalb wahlweise als Leerzeichen.
Der URL Encoder arbeitet immer mit UTF-8, wie es RFC 3986 und alle modernen Browser vorsehen. Ältere Systeme kodierten Umlaute manchmal in Latin-1 (%FC statt %C3%BC); solche Folgen erkennt das Werkzeug beim Dekodieren und liest sie als Windows-1252. Kodieren Sie eine URL nicht zweimal: Aus %20 würde sonst %2520.
Anleitung: URL kodieren in 4 Schritten
- Richtung wählen: „Text → URL-kodiert“ oder „URL-kodiert → Text“.
- Art der Kodierung festlegen: Parameterwert, ganze URL, streng nach RFC 3986 oder Formular mit +.
- Text in die Eingabe einfügen und bei Listen „Jede Zeile einzeln umwandeln“ einschalten.
- Ergebnis kopieren oder mit „Tauschen“ zurückwandeln, um es zu kontrollieren.
Typische Anwendungsfälle
- Suchbegriff mit Umlauten in einen Link-Parameter einbauen, etwa q=gr%C3%BCne%20%C3%A4pfel für „grüne äpfel“.
- Unlesbaren Link aus einer E-Mail oder einem Server-Log dekodieren, um das eigentliche Ziel zu sehen.
- Rücksprung-Adresse als Parameter übergeben, etwa redirect=https%3A%2F%2Fexample.com%2Fkonto, damit / und : die URL nicht zerbrechen.
- Formulardaten aus einem POST-Request mit + statt Leerzeichen lesbar machen.
Häufige Fragen
Was ist der Unterschied zwischen encodeURI und encodeURIComponent?
encodeURI lässt Zeichen stehen, die in einer URL Bedeutung haben (/ ? & = # :), und eignet sich für ganze Adressen. encodeURIComponent kodiert auch diese Zeichen und ist für einzelne Parameterwerte gedacht.
Wird ein Leerzeichen zu %20 oder zu +?
In Pfaden und nach RFC 3986 zu %20. In Formulardaten (application/x-www-form-urlencoded) und damit oft in Query-Strings zu +. Beim Dekodieren hängt es also von der Quelle ab.
Warum sehe ich %25 in meiner URL?
%25 ist das kodierte Prozentzeichen. Es entsteht meist, wenn eine bereits kodierte URL ein zweites Mal kodiert wurde, aus %20 wird dann %2520.
Welche Zeichen muss man in URLs nicht kodieren?
Nach RFC 3986 die nicht reservierten Zeichen A–Z, a–z, 0–9 sowie - . _ und ~. Alle anderen Zeichen sollten in Parameterwerten prozentkodiert werden.
Wie werden Umlaute in einer URL kodiert?
Sie werden in UTF-8-Bytes zerlegt und prozentkodiert: ä wird zu %C3%A4, ö zu %C3%B6, ü zu %C3%BC und ß zu %C3%9F.
Wie kodiere ich eine URL in Excel oder Python?
In Excel mit der Funktion URLCODIEREN (englisch ENCODEURL), in Python mit urllib.parse.quote(wert, safe="") oder urllib.parse.quote_plus(wert) für Formulardaten mit +. In JavaScript entspricht encodeURIComponent() der Voreinstellung dieses Werkzeugs.
Das könnte auch helfen
Base64 kodieren und dekodieren
Text in Base64 umwandeln und zurück, UTF-8-sicher, auch URL-sicheres Base64 ohne Padding.
ÖffnenHTML-Entities umwandeln
Sonderzeichen und Umlaute in HTML-Entities kodieren oder Entities wieder in Klartext dekodieren.
ÖffnenHex in Text umwandeln
Hexadezimale Bytes in Text dekodieren und Text in Hex kodieren, UTF-8, mit Trennzeichen und Hex-Dump.
ÖffnenText in Binär umwandeln
Text in Binärcode aus Nullen und Einsen umwandeln und Binärcode zurück in Text übersetzen, UTF-8.
ÖffnenUnicode-Escape umwandeln
Zeichen in Escape-Sequenzen für JavaScript, JSON, Python, CSS und HTML umwandeln und zurück.
ÖffnenASCII-Tabelle
Alle 128 ASCII-Zeichen mit Dezimal, Hex, Oktal, Binär und Beschreibung, durchsuchbar.
Öffnen