Wie Sie URLs kodieren und dekodieren

· 3 Min. Lesezeit

Wenn Sie schon einmal %20 in einer URL gesehen haben, wo eigentlich ein Leerzeichen sein sollte, oder %C3%A9 dort, wo ein Zeichen mit Akzent stehen müsste, sind Sie der URL-Kodierung begegnet. Sie ist ein grundlegender Baustein des Webs, und ihr Verständnis hilft beim Debuggen kaputter Links, API-Probleme und Formularübermittlungen.

Was URL-Kodierung tut

URLs dürfen nur einen begrenzten Satz an Zeichen sicher enthalten: Buchstaben (A-Z, a-z), Ziffern (0-9) und einige Sonderzeichen (-, _, ., ~). Alles andere — Leerzeichen, Buchstaben mit Akzent, Emoji und Symbole wie &, =, #, ? — muss in ein sicheres Format umgewandelt werden.

URL-Kodierung (auch Prozent-Kodierung genannt) ersetzt unsichere Zeichen durch ein %, gefolgt von ihrem Hexadezimalwert in Bytes:

Zeichen Kodiert
Leerzeichen %20
& %26
= %3D
# %23
? %3F
/ %2F
@ %40

Wann URL-Kodierung nötig ist

So kodieren und decodieren Sie

  1. Kodieren oder Decodieren wählen — wählen Sie die Richtung. Verwenden Sie encodeURIComponent für Query-Parameter oder encodeURI für vollständige URLs.
  2. Eingabe einfügen — geben Sie den Text oder die URL ein. Das Ergebnis aktualisiert sich sofort.
  3. Ausgabe kopieren — verwenden Sie das Ergebnis in Ihrem Code, Ihrer API-Anfrage oder Ihrem Browser.

Tipps

Häufig gestellte Fragen

Was ist der Unterschied zwischen encodeURI und encodeURIComponent?

encodeURI bewahrt Zeichen, die in einer URL-Struktur gültig sind (Schrägstriche, Doppelpunkte, Fragezeichen). encodeURIComponent kodiert alles außer Buchstaben, Ziffern und einigen sicheren Zeichen. Verwenden Sie encodeURIComponent für Query-Parameterwerte und encodeURI für vollständige URLs.

Warum werden Leerzeichen zu %20 oder +?

In der URL-Kodierung werden Leerzeichen zu %20. In Formulardaten (application/x-www-form-urlencoded) werden Leerzeichen zu +. Beides ist im jeweiligen Kontext gültig, aber %20 ist der universelle Standard für URLs.

Muss ich meine URLs manuell kodieren?

In den meisten Fällen kümmert sich Ihre Programmiersprache oder Ihr Framework automatisch um die Kodierung. Manuelles Kodieren ist nötig, wenn Sie URLs von Hand bauen, API-Anfragen debuggen oder mit Query-Strings arbeiten, die Sonderzeichen enthalten.

Werden meine Daten an einen Server gesendet?

Nein. Sämtliches Kodieren und Dekodieren erfolgt in Ihrem Browser.