URL Kodierer / Dekodierer

URLs und Query-Strings per Prozentkodierung im Modus Komponente, URI oder Form kodieren und dekodieren, mit UTF-8, UTF-16 oder Latin-1. Lokal im Browser.

Eingaben und Dateien bleiben im Browser

Fügen Sie eine URL, einen Query-String oder Text ein, um ihn per Prozentkodierung zu kodieren oder zu dekodieren.

Hier erscheint das kodierte oder dekodierte Ergebnis.

Auf dieser Seite

Kodieren Sie Text für URLs per Prozentkodierung und dekodieren Sie %XX-Folgen zurück in lesbaren Text. Die drei Modi entsprechen encodeURIComponent, encodeURI aus JavaScript und der HTML-Formularkodierung; die Arbeit erledigt ein aus Rust kompiliertes WebAssembly-Modul in Ihrem Browser.

Detaillierte Funktionalität

Der Modus Komponente maskiert alles außer Buchstaben, Ziffern und - _ . ! ~ * ' ( ), kodiert also auch /, ?, & und =: für einen einzelnen Parameterwert oder ein Pfadsegment. Der Modus URI erhält die Struktur einer vollständigen Adresse (: / ? # & = + $ , ; @) und maskiert nur Leerzeichen und Zeichen, die in einer URL nie gültig sind. Der Modus Form folgt application/x-www-form-urlencoded: Leerzeichen werden zu +, alles außer Buchstaben, Ziffern und - _ . * wird maskiert; beim Dekodieren wird + wieder zum Leerzeichen.

Vor dem Kodieren wird Text im gewählten Zeichensatz in Bytes umgewandelt. UTF-8 ist der Webstandard; ISO-8859-1 (Latin-1), UTF-16LE und UTF-16BE sind für Altsysteme da, und ein Zeichen, das der Zeichensatz nicht darstellen kann, wird mit Position gemeldet. Das Dekodieren ist streng: Auf jedes % müssen zwei Hex-Ziffern folgen, ein einzelnes 100% wird also gemeldet statt still durchgereicht. Die Statuszeile zeigt die Ausgabelänge in Zeichen und Bytes.

Praktische Beispiele

Parameterwert: a b&c=d/e? wird im Modus Komponente zu a%20b%26c%3Dd%2Fe%3F.

Ganze URL: https://example.com/my path?q=a b&x=1 wird im Modus URI zu https://example.com/my%20path?q=a%20b&x=1, im Modus Komponente dagegen zu https%3A%2F%2Fexample.com%2Fmy%20path%3Fq%3Da%20b%26x%3D1.

Formulardaten: John Doe & Co. wird im Modus Form zu John+Doe+%26+Co.; a+b%20c ergibt dekodiert im Modus Form a b c, im Modus Komponente aber a+b c.

Zeichensatz: café ist caf%C3%A9 in UTF-8 und caf%E9 in ISO-8859-1.

So verwenden Sie dieses Tool

  1. Text oder kodierte Zeichenkette einfügen

    Geben Sie in Eingabe Klartext zum Kodieren oder eine prozentkodierte Zeichenkette zum Dekodieren ein.

  2. Modus und Zeichensatz wählen

    Wählen Sie unter Modus Komponente (wie encodeURIComponent) für einen Einzelwert, URI (wie encodeURI) für eine ganze Adresse oder Form (application/x-www-form-urlencoded) für Formulardaten. Lassen Sie Textzeichensatz auf UTF-8, sofern der Server nichts anderes erwartet.

  3. Kodieren oder dekodieren

    Klicken Sie auf Kodieren, um die Eingabe zu kodieren, oder auf Dekodieren, um den Text wiederherzustellen. Ungültige %-Folgen und Zeichen außerhalb des Zeichensatzes werden als Fehler gemeldet.

  4. Ergebnis kopieren

    Kopieren legt die Ausgabe in die Zwischenablage. Tauschen schiebt sie zurück in die Eingabe, etwa um eine weitere Schicht zu dekodieren.

Tipps und Best Practices

  • Kodieren Sie jeden Query-Wert einzeln im Modus Komponente und verbinden Sie sie danach mit & und =. Kodiert man die ganze URL im Modus Komponente, wird auch :// maskiert und der Link funktioniert nicht mehr.
  • Der Modus URI maskiert &, = und # nicht: Enthält ein Parameterwert diese Zeichen, kodieren Sie ihn im Modus Komponente.
  • + steht nur in Formulardaten für ein Leerzeichen; außerhalb des Modus Form wird es als Pluszeichen dekodiert.
  • Doppelt kodierter Text wie %2520 wird zuerst zu %20: Klicken Sie auf Tauschen und erneut auf Dekodieren, um die nächste Schicht zu entfernen.
  • Nutzen Sie den Zeichensatz, den der Server erwartet: %E9 wird mit ISO-8859-1 zu é, in UTF-8 ist ein einzelnes %E9 dagegen ungültiger Text.