CodeKitHub
Deutsch
Kodier-Tools

URL-Encoder/-Decoder online

Text für die sichere Verwendung in URLs prozentuell kodieren oder eine kodierte URL wieder in eine lesbare Form dekodieren. Wählen Sie den Komponentenmodus (kodiert alles, für Werte von Abfrageparametern) oder den Voll-URL-Modus (behält die Struktur :// ? & bei). Läuft vollständig in Ihrem Browser.

Was ist dieses Tool?

Bei der URL-Kodierung (Prozent-Kodierung) werden Zeichen, die in URLs nicht zulässig sind, durch ein „%“ ersetzt, gefolgt von ihrem Byte-Wert im Hexadezimalformat – ein Leerzeichen wird zu %20 und „你“ zu %E4%BD%A0. Ohne diese Kodierung würden Zeichen wie Leerzeichen, &, ? und Nicht-ASCII-Zeichen die URL-Struktur zerstören oder von Servern falsch interpretiert werden.

Es gibt zwei häufige Anwendungsfälle, und dieses Tool unterstützt beide: die Kodierung eines Werts, der in einen Abfrageparameter eingefügt wird (Komponentenmodus – kodiert auch /, ? und =), sowie die Kodierung einer gesamten URL unter Beibehaltung ihrer Struktur (Voll-URL-Modus – lässt ://, ? und & unverändert).

Warum sollte man es nutzen?

  • Erstellen Sie Query-Strings auf sichere Weise – Benutzereingaben mit „&“, „=“ oder Leerzeichen führen nicht zu Fehlern in Ihrer URL.
  • Entschlüsseln Sie lange, verschlüsselte URLs aus Protokollen, Analysedaten oder Weiterleitungsketten, um zu sehen, was darin tatsächlich steht.
  • Korrekte UTF-8-Verarbeitung für chinesischen Text, Emojis und andere Nicht-ASCII-Zeichen.
  • Zwei Modi, damit Sie nicht versehentlich das „:“ und das „/“ einer gesamten URL umwandeln.
  • Kostenlos, sofort, kein Upload.

Anleitung

  1. Fügen Sie Ihren Text oder Ihre URL in das Eingabefeld ein.
  2. Wählen Sie den Modus aus: „Komponente“ für Werte, die in Abfrageparameter übernommen werden, „Vollständige URL“ für vollständige URLs.
  3. Klicken Sie auf „Kodieren“ oder „Dekodieren“.
  4. Kopieren Sie das Ergebnis.

Beispiel

Eingabe

https://example.com/search?q=hello world & 你好

Ausgabe

Component mode: https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world%20%26%20%E4%BD%A0%E5%A5%BD
Full URL mode:  https://example.com/search?q=hello%20world%20&%20%E4%BD%A0%E5%A5%BD

Im Komponentenmodus werden auch Strukturzeichen kodiert; im Voll-URL-Modus bleiben diese erhalten.

Häufige Anwendungsfälle

  • Erstellung einer teilbaren URL, bei der ein Suchbegriff oder Filterwert aus einer Benutzereingabe stammt und Leerzeichen, „&“ oder andere Sonderzeichen enthalten kann.
  • Eine lange Tracking- oder Weiterleitungs-URL aus einer E-Mail oder einer Werbekampagne entschlüsseln, um das tatsächliche Ziel und die Parameter zu sehen, bevor man darauf klickt.
  • Fehlerbehebung bei einem Abfrageparameter, der vom Server nicht korrekt gelesen wird – oft liegt die Ursache in einem reservierten Zeichen, das eigentlich hätte kodiert werden müssen, dies aber nicht wurde.
  • Vorbereitung eines nicht-englischen Werts (Chinesisch, Japanisch, Arabisch usw.) zur Verwendung in einem URL-Abfrage-String.

encodeURIComponent vs. encodeURI – in der Praxis

Diese entsprechen direkt den beiden Modi dieses Tools und entsprechen echten JavaScript-Funktionen, die Entwickler bereits kennen: encodeURIComponent (Komponentenmodus) kodiert alles außer einer kleinen Menge nicht reservierter Zeichen, sodass jeder einzelne Wert sicher in eine URL eingefügt werden kann – dies wird für Abfrageparameter, Pfadsegmente oder Hash-Fragment-Werte verwendet. encodeURI (Voll-URL-Modus) lässt die strukturellen Zeichen der URL (:, /, ?, #, &, =) unberührt, da davon ausgegangen wird, dass Sie eine vollständige, bereits strukturierte URL kodieren und keinen Rohwert – bei der Anwendung auf einen einzelnen Parameterwert würden die Zeichen & oder =, die dieser Wert möglicherweise enthält, nicht kodiert werden; dies ist der häufigste Fehler, den Nutzer begehen, wenn sie den falschen Modus wählen.

Reservierte vs. nicht reservierte Zeichen

Die URL-Spezifikation (RFC 3986) unterteilt Zeichen in zwei Gruppen: nicht reservierte Zeichen (Buchstaben, Ziffern, - _ . ~) sind immer sicher und werden niemals kodiert, während reservierte Zeichen (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) eine besondere Bedeutung in der URL-Struktur haben und nur dann kodiert werden müssen, wenn sie als literale Daten und nicht als strukturelle Satzzeichen auftreten. Genau aus diesem Grund gibt es die beiden Modi – der Komponentenmodus behandelt reservierte Zeichen als zu schützende Daten, der Voll-URL-Modus behandelt sie als zu bewahrende Struktur. Diese Unterscheidung zu verstehen ist hilfreicher, als sich auswendig zu merken, wann welcher Modus zu verwenden ist, da sie erklärt, warum dasselbe Zeichen (wie &) manchmal kodiert und manchmal unverändert gelassen wird, je nachdem, welche Rolle es in der jeweiligen URL spielt.

Häufig gestellte Fragen

Wann sollte ich den Komponentenmodus und wann den Voll-URL-Modus verwenden?

Komponentenmodus (encodeURIComponent) bei der Kodierung eines einzelnen Werts, der in einen Abfrageparameter eingefügt wird – dabei werden /, ?, & und = so kodiert, dass sie die URL nicht beschädigen können. Vollständiger URL-Modus (encodeURI) bei der Kodierung einer vollständigen URL – dabei bleiben die strukturellen Zeichen erhalten, sodass die URL weiterhin funktioniert.

Warum wurde für Leerzeichen „%20“ anstelle von „+“ angezeigt?

Beide sind in unterschiedlichen Kontexten gültig. %20 ist die universelle Prozent-Kodierung für ein Leerzeichen; + steht nur in Abfragezeichenfolgen im älteren Format „application/x-www-form-urlencoded“ für ein Leerzeichen. Dieses Tool verwendet %20, was überall funktioniert.

Warum schlägt die Dekodierung mit einem Fehler fehl?

Die Eingabe enthält eine fehlerhafte Prozent-Sequenz, z. B. ein „%“, auf das nicht zwei Hexadezimalziffern folgen. Dies tritt häufig auf, wenn eine URL abgeschnitten oder doppelt dekodiert wurde. Korrigieren oder entfernen Sie die fehlerhafte Prozent-Sequenz.

Was ist doppelte Kodierung?

Kodierung von bereits kodiertem Text: Aus %20 wird %2520, da % selbst zu %25 kodiert wird. Das ist ein häufiger Fehler – falls Ihre dekodierte Ausgabe immer noch %-Codes enthält, dekodieren Sie sie noch einmal.

Unterstützt das chinesische Schriftzeichen und Emojis?

Ja. Text wird als UTF-8-Bytes kodiert, sodass „你好“ zu „%E4%BD%A0%E5%A5%BD“ wird und sich wieder einwandfrei dekodieren lässt – genau wie es auch in Browsern der Fall ist.

Verwandte Tools