URL-Encoder und -Decoder – URLs und Query-Strings
Text für URLs und Query-Strings prozentkodieren oder eine codierte URL in lesbaren Text zurückverwandeln – direkt im Browser.
Modus wählen, Text einfügen und Konvertieren klicken. Komponente codieren eignet sich für Query-Werte, vollständige URL codieren erhält eine ganze Adresse und Decodieren macht Prozentkodierung rückgängig.
URL-Encoder und -Decoder – URLs und Query-Strings
Text für URLs und Query-Strings prozentkodieren oder eine codierte URL in lesbaren Text zurückverwandeln – direkt im Browser.
Codiert jedes reservierte Zeichen, einschließlich & = ? / und #. Für einen einzelnen Query-Wert oder Pfadabschnitt verwenden.
So funktioniert es: Zeichen außerhalb der nicht reservierten Menge werden durch ihre UTF-8-Bytes als %XX-Hexpaare ersetzt. Verwendet werden encodeURIComponent, encodeURI und decodeURIComponent.
Über den URL-Encoder und -Decoder
URLs können nur eine begrenzte Zeichenauswahl sicher übertragen. RFC 3986 definiert die nicht reservierten Zeichen aus Buchstaben, Ziffern und - _ . ~ sowie reservierte Zeichen wie ? & = / und # mit struktureller Bedeutung. Alles andere, vom Leerzeichen bis zu Akzent- oder CJK-Zeichen, muss prozentcodiert werden: Das Zeichen wird in UTF-8-Bytes umgewandelt und jedes Byte als Prozentzeichen mit zwei Hexadezimalziffern geschrieben. Dieses Tool erledigt die Umwandlung sofort und vollständig im Browser, ohne Inhalte an einen Server zu senden.
Es gibt drei Modi, weil JavaScript zwei Codieraufgaben unterscheidet. Komponente codieren verwendet encodeURIComponent und maskiert alle reservierten Zeichen. Das ist richtig für Suchbegriffe, Weiterleitungsziele, Token oder Werte hinter einem Gleichheitszeichen. Enthält der Wert & oder =, hält die Codierung ihn als einen Wert zusammen.
Vollständige URL codieren verwendet encodeURI für eine bereits strukturierte Adresse. Leerzeichen, Anführungszeichen, spitze Klammern und Nicht-ASCII-Zeichen werden maskiert, : / ? & = # bleiben jedoch erhalten, damit Schema, Host, Pfad und Query ihre Bedeutung behalten. Die Komponenten-Codierung einer ganzen URL würde ihre Struktur zerstören.
Decodieren kehrt den Vorgang mit decodeURIComponent um: %20 wird zum Leerzeichen, %26 zum kaufmännischen Und und %C3%BC zu ü. So lassen sich Tracking-Links lesen, OAuth-Weiterleitungen prüfen und Formulardaten untersuchen. Ein % ohne zwei gültige Hexadezimalziffern erzeugt eine klare Fehlermeldung.
Typische Anwendungen sind API-Query-Parameter, Links mit Leerzeichen, verschachtelte URLs und Redirect-Ketten. Prozentcodierung ist nur eine Transportdarstellung, keine Sicherheit: Sie ist leicht umkehrbar. Behandle sie nicht als Geheimhaltung und validiere decodierte Eingaben immer serverseitig.
Beispiele für URL-Codierung
So behandeln die drei Modi reservierte Zeichen, Leerzeichen und Nicht-ASCII-Text.
| Eingabe | Ausgabe | Hinweis |
|---|---|---|
| price=1+2 (Komponente codieren) | price%3D1%2B2 | = und + sind in Query-Strings reserviert und werden zu %3D und %2B. |
| https://example.com/my files/report 2024.pdf (Vollständige URL) | https://example.com/my%20files/report%202024.pdf | Leerzeichen werden zu %20, Schema und Schrägstriche bleiben unverändert. |
| na%C3%AFve (Decodieren) | naïve | Die zweibyte UTF-8-Sequenz %C3%AF wird zum einzelnen Zeichen ï. |
| 50% off (Komponente codieren) | 50%25%20off | Ein wörtliches Prozentzeichen muss als %25 codiert werden, damit es nicht falsch gelesen wird. |
URL codieren oder decodieren
- Modus wählen: Komponente für einen Wert, vollständige URL für eine Adresse oder Decodieren zum Rückgängigmachen.
- Text oder URL in das Eingabefeld einfügen.
- Konvertieren klicken – das Ergebnis erscheint sofort im Ausgabefeld.
- Ausgabe kopieren oder Löschen klicken, um neu zu beginnen.
FAQ zu URL-Encoder und -Decoder
Was ist der Unterschied zwischen encodeURIComponent und encodeURI?
encodeURIComponent maskiert jedes reservierte Zeichen, einschließlich / ? & = und #, und wird für einzelne Werte verwendet. encodeURI lässt Strukturzeichen stehen und ist für vollständige URLs gedacht. Das Tool nennt sie Komponente und vollständige URL codieren.
Warum wird ein Leerzeichen zu %20 und nicht zu +?
%20 ist die Standard-Prozentcodierung für Leerzeichen in URLs. + stammt aus application/x-www-form-urlencoded für HTML-Formulare und gilt nur im Query-String. Dieses Tool gibt immer %20 aus; beim Decodieren bleibt + ein Pluszeichen.
Warum erhalte ich beim Decodieren einen Fehler?
decodeURIComponent wirft einen Fehler, wenn auf % nicht zwei gültige Hexadezimalziffern folgen, etwa bei einem wörtlichen Prozentzeichen oder einer abgeschnittenen Sequenz. Prüfe, ob die Eingabe vollständig codiert ist.
Wie werden Akzente, CJK-Zeichen und Emojis codiert?
Das Zeichen wird zuerst in UTF-8-Bytes umgewandelt, dann wird jedes Byte als %XX geschrieben. Akzente benötigen meist zwei Paare, Emojis vier; beim Decodieren wird das Original exakt wiederhergestellt.
Soll ich eine ganze URL als Komponente codieren?
Nein. Dabei würden Doppelpunkt, Schrägstriche und Fragezeichen der URL-Struktur maskiert. Für eine ganze Adresse vollständige URL codieren, für einzelne Werte Komponente codieren verwenden.
Werden eingefügte Inhalte an einen Server gesendet?
Nein. Die Umwandlung läuft mit den JavaScript-Funktionen encodeURIComponent, encodeURI und decodeURIComponent vollständig im Browser. Token, Sitzungs-IDs und private Pfade verlassen das Gerät nicht.