URL Encoder/Decoder — URL kodieren und dekodieren
Ein URL-Prozentkodierer und -Dekodierer, der Unicode und Emojis beherrscht
Verarbeitung im Browser · kein Hochladen
Was ist das?
In einer URL dürfen nur Buchstaben, Ziffern und wenige Sonderzeichen unverändert stehen. Alles andere – Umlaute, Leerzeichen, Emojis – wird in UTF-8-Bytes umgewandelt, und jedes Byte wird als % plus zwei Hexziffern geschrieben. Das ist die Prozentkodierung. Dieses Tool zeigt das kodierte oder dekodierte Ergebnis schon beim Tippen.
So funktioniert es
- Wählen Sie Kodieren oder Dekodieren.
- Wählen Sie den Umfang: encodeURIComponent für einen einzelnen Query-Wert, encodeURI für eine ganze URL.
- Fügen Sie Text oder eine URL ein – das Ergebnis erscheint sofort.
- Aktivieren Sie beim Dekodieren von Formulardaten die Option „+ als Leerzeichen behandeln“.
- Kopieren Sie das Ergebnis oder klicken Sie auf „Ausgabe als Eingabe verwenden“, um den Rückweg zu prüfen.
Technische Details
- Die Arbeit erledigen die browsereigenen Funktionen
encodeURIComponent,encodeURI,decodeURIComponentunddecodeURInach den Regeln von RFC 3986. - Text wird zuerst in UTF-8-Bytes umgewandelt. Ein Umlaut belegt 2 Bytes und ergibt daher zwei
%XX-Gruppen, ein chinesisches Zeichen 3 und ein Emoji 4. - Unkodiert bleiben
A-Z a-z 0-9 - _ . ! ~ * ' ( ). encodeURI lässt zusätzlich; , / ? : @ & = + $ #stehen. - Ein ungepaartes Surrogat kann nicht kodiert werden und wird als Fehler gemeldet.
- Eine fehlgeschlagene Dekodierung wird nie stillschweigend repariert; stattdessen erscheint eine Fehlermeldung.
Beispiele
| Eingabe | Modus | Ergebnis |
|---|---|---|
a b&c=d |
Komponente | a%20b%26c%3Dd |
Grüße |
Komponente | Gr%C3%BC%C3%9Fe |
👍 |
Komponente | %F0%9F%91%8D |
https://example.com/größe?q=a b |
Ganze URL | https://example.com/gr%C3%B6%C3%9Fe?q=a%20b |
Häufige Fragen
Was ist der Unterschied zwischen encodeURIComponent und encodeURI?
encodeURIComponent ist für einen einzelnen Teil wie einen Query-Wert gedacht und kodiert daher auch die Trennzeichen / ? & = und #. encodeURI ist für eine ganze URL gedacht und lässt diese Trennzeichen unverändert.
Warum erhalte ich einen Dekodierfehler?
Auf ein % müssen zwei Hexziffern folgen, und die entstehenden Bytes müssen gültiges UTF-8 ergeben. Prüfen Sie, ob der String nicht mittendrin abgeschnitten ist und ob kein unmaskiertes % im Text steht.
Wird ein Leerzeichen zu %20 oder zu +?
Im URL-Pfad ist es %20. Das Pluszeichen bedeutet nur in der HTML-Formularkodierung (application/x-www-form-urlencoded) ein Leerzeichen. Aktivieren Sie beim Dekodieren solcher Daten die Plus-Option.
Wird meine URL an einen Server gesendet?
Nein. Alles geschieht in Ihrem Browser.