Kodierung

URL Encode/Decode

URL-Kodierung und -Dekodierung — Zeichen, die in Links und Query-Parametern maskiert werden müssen.

URL encoding (percent-encoding) replaces characters that aren't allowed in a URL — spaces, non-Latin letters, special characters — with %XX sequences, where XX is the hex code of the byte. This keeps links and query parameters from getting mangled in transit.

How to use it

Common uses

Things to keep in mind

Encode parameter values, not the whole URL at once — otherwise you'll also encode the separators you need (:, /, ?, &).

JavaScript's encodeURIComponent and encodeURI encode different character sets — the former is meant specifically for parameter values.

Artikel zu diesem Tool: URL Encode/Decode: Percent-Encoding in Links

Häufig gestellte Fragen

Was ist der Unterschied zwischen Komponente und URI beim Kodieren?

Komponente (encodeURIComponent) maskiert alle Sonderzeichen, auch solche mit struktureller Bedeutung wie & oder /, und eignet sich für einzelne Query-Parameter-Werte. URI (encodeURI) lässt Struktur-Zeichen wie /, ? und & unangetastet, weil sie zur URL selbst gehören.

Ist URL-Kodierung dasselbe wie Base64?

Nein. URL-Kodierung (Prozent-Kodierung) ersetzt einzelne Zeichen durch %XX-Sequenzen und verändert die Länge kaum, während Base64 die gesamte Zeichenkette in ein anderes Alphabet umwandelt. Es gibt zwar eine URL-sichere Base64-Variante, das ist aber ein eigenständiges Verfahren.

Werden die eingegebenen URLs irgendwo gespeichert?

Nein, die Kodierung und Dekodierung erfolgt vollständig im Browser. Es werden keine Daten an einen Server gesendet.

Was ist doppelte Kodierung und wie erkennt man sie?

Das ist ein Fehler, bei dem eine bereits kodierte Zeichenkette noch einmal kodiert wird – das Zeichen % verwandelt sich dabei selbst in %25, und aus %20 wird %2520. Ein Anzeichen dafür sind Sequenzen wie %25XX im dekodierten Ergebnis.

Warum wird ein Leerzeichen manchmal als + und manchmal als %20 kodiert?

+ für ein Leerzeichen ist das Format application/x-www-form-urlencoded, das bei Formularen und Query-Strings verwendet wird. %20 ist das Standard-Percent-Encoding nach RFC 3986 und in jedem Teil einer URL korrekt.

Artikel: Kodierung

Base64: wozu Kodierung dient und wie sie funktioniert

Wie Base64 binäre Daten in ASCII-Text verwandelt und wann das wirklich gebraucht wird.

Base32: der Unterschied zu Base64 und wann es praktischer ist

Das case-insensitive Alphabet von Base32 und Fälle, in denen es praktischer ist als Base64.

HTML Entities: Sonderzeichen sicher auf einer Seite ausgeben

Warum die Zeichen < > & escapt werden müssen und wie das kaputtes Markup verhindert.

JWT: Aufbau eines Tokens und was „Dekodieren" eines JWT bedeutet

Header, Payload und Signature eines JWT — und warum Dekodieren nicht dasselbe ist wie Signaturprüfung.

Unicode Escape: was \uXXXX-Sequenzen bedeuten

Woher Sequenzen wie \u0041 in JSON und JS-Strings kommen und was sie bedeuten.

ROT13 und die Caesar-Verschlüsselung: einfache Zeichensubstitution

Warum eine Verschiebung um 13 Buchstaben ROT13 selbstinvers macht und wozu man es heute noch nutzt.

Punycode: wie internationalisierte Domains im DNS funktionieren

Wie eine Domain mit nicht-lateinischen Zeichen zu einer ASCII-Form mit dem Präfix xn-- wird.

Morsecode: wie Text zu Punkten und Strichen wird

Das Prinzip der Kodierung von Buchstaben als Punkte und Striche, und wo Morsecode heute noch genutzt wird.

Data URI: wann Bilder direkt in den Code einbetten

Wie ein Data-URI den Inhalt einer Datei direkt in HTML oder CSS einbettet, und wann sich das lohnt.

Gzip + Base64: Daten komprimieren für die Übertragung als Text

Warum komprimierte Binärdaten zusätzlich Base64-kodiert werden, bevor sie in ein Textfeld kommen.

XML Entities: Zeichen in XML-Dokumenten escapen

Die fünf Pflicht-Entities von XML, ohne die das Dokument beim Parsen bricht.