🔧Toolify

URL-Encoder / -Decoder (Prozent-Kodierung, UTF-8-sicher)

Zum sicheren Einbetten von Text in URLs, Query-Parameter oder Formulardaten verwenden. Verarbeitet Leerzeichen, Sonderzeichen und Unicode (inkl. CJK und Emoji) korrekt.

Kodiertes Ergebnis
 

Wie es funktioniert

Was URL-Kodierung ist

URLs sind auf eine kleine Menge von ASCII-Zeichen beschränkt. Um alles andere einzubeziehen — Leerzeichen, Akzente, chinesische Zeichen, Emoji, Sonderzeichen — wird jedes unsichere Byte durch %XX ersetzt, wobei XX sein hexadezimaler Bytewert ist. Ein Leerzeichen wird zu %20, ein Schrägstrich zu %2F, das Kanji 漢 wird zu %E6%BC%A2 (seine UTF-8-Bytes prozent-kodiert).

Dieser Rechner verwendet die eingebauten encodeURIComponent- und decodeURIComponent-Funktionen des Browsers. Er kodiert alles, was kein unreserviertes Zeichen ist (Buchstaben, Ziffern, -._~), was das richtige Verhalten für Query-Parameter und Formulardaten ist.

encodeURI vs. encodeURIComponent

JavaScript hat zwei Encoder. encodeURI lässt URL-Strukturzeichen (/ ? & # = + usw.) unverändert — für vollständige URLs verwenden. encodeURIComponent maskiert all diese — für den Wert innerhalb eines Query-Parameters verwenden.

Dieses Tool verwendet encodeURIComponent, die sicherere Wahl zum Einbetten beliebigen Textes in eine URL. Bei einer vollständigen URL mit zu erhaltender Struktur nur die Teile kodieren, die es brauchen.

Häufige Fallstricke

Pluszeichen in URLs. Manche Server behandeln ‚+' als Leerzeichen (ein Überbleibsel der Formular-Kodierung). encodeURIComponent lässt ‚+' unverändert, aber ein Server könnte es als Leerzeichen decodieren. Sicherheitshalber ‚+' durch %2B ersetzen, wenn es als Datenwert gesendet wird.

Doppelkodierung. Das Kodieren einer bereits kodierten Zeichenkette fügt eine weitere Schicht hinzu (% wird zu %25, also wird ‚%20' zu ‚%2520'). Immer prüfen, ob die Eingabe bereits kodiert ist, bevor encode erneut ausgeführt wird.

Längenzunahme. UTF-8-Mehrbyte-Zeichen expandieren zu je 3–4 Prozentkodes. Eine 100-Zeichen-Zeichenkette in Chinesisch wird leicht zu einer 900+-Zeichen-URL.

Häufige Fragen

Warum wird mein Leerzeichen ‚%20' nicht zu einem Leerzeichen decodiert?

Das sollte es — aber wenn ‚+' in einer URL steht, könnte es auch ein Leerzeichen darstellen (ältere Formular-Kodierung). Bei Bedarf ‚+' zuerst durch Leerzeichen ersetzen.

Handhabt das Emoji?

Ja. Emoji werden als ihre UTF-8-Byte-Sequenzen kodiert (typischerweise 4 Bytes / 4 Prozentkodes pro Emoji).

Was ist der Unterschied zwischen URL-Kodierung und HTML-Kodierung?

URL-Kodierung verwendet %-Notation für URL-Kontexte. HTML-Kodierung verwendet < > usw. für HTML. Unterschiedliche Kontexte, unterschiedliche Regeln.

Wann soll ich kodieren und wann nicht?

Jeden Wert kodieren, der in einen URL-Query-Parameter, Pfadsegment mit Benutzereingaben oder Formulardaten einfließt. Eine bereits fertig aufgebaute URL nicht kodieren — das führt zur Doppelkodierung.

Warum verursacht ‚%' in meinem decodierten Text einen Fehler?

Ein einzelnes ‚%' gefolgt von etwas, das kein gültiges Hex ist, ist ungültige Prozent-Kodierung. ‚%' als ‚%25' kodieren, bevor es in eine URL aufgenommen wird.

Macht der Browser das automatisch?

Ja — beim Aufbau von URLs über die URL- oder URLSearchParams-APIs. Dieses Tool macht dieselbe Logik für den Ad-hoc-Gebrauch zugänglich.

Welche Zeichen sind ‚sicher' und brauchen keine Kodierung?

Buchstaben (A–Z, a–z), Ziffern (0–9) und diese: - . _ ~ . Alles andere wird von encodeURIComponent prozent-kodiert.

Verlassen die Daten meinen Browser?

Nein. Kodierung und Decodierung laufen beide lokal.

Verwandte Tools

Zuletzt aktualisiert:

Probiere unsere KI-Prompts →