Alle Ratgeber

Was ist Percent-Encoding (URL-Kodierung)?

Ratgeber zur URL-Kodierung

Eine URL war ursprünglich dafür ausgelegt, nur eine begrenzte Menge von ASCII-Zeichen zu tragen. Setzt man ein Leerzeichen, einen Nicht-Latin-Buchstaben oder ein Sonderzeichen wie ? oder & direkt in eine Adresse, können verschiedene Browser oder Server es unterschiedlich interpretieren, oder sie bricht. Die Lösung ist Percent-Encoding — das, was man üblicherweise URL-Kodierung nennt.

Was %XX bedeutet

Percent-Encoding ersetzt ein unsicheres Zeichen durch seinen Byte-Wert in hexadezimaler Form, dem ein % vorangestellt wird. Ein Leerzeichen wird zu %20, ein Fragezeichen wird zu %3F. Ein Zeichen aus mehreren Bytes, wie die meisten Nicht-Latin-Buchstaben, erhält ein %XX pro UTF-8-Byte.

Warum UTF-8

Das moderne Web behandelt UTF-8 als Standard. Das browserinterne encodeURIComponent wandelt Text in UTF-8-Bytes um und macht dann aus jedem Byte ein %XX. Das bedeutet, dass dasselbe Zeichen immer gleich kodiert wird und das Dekodieren den ursprünglichen Text exakt wiederherstellt.

Das Encode/Decode-Tool dieser Seite nutzt die eingebauten Funktionen des Browsers, sodass Ihre Eingabe sofort umgewandelt und niemals an einen Server gesendet wird.

Wann Sie es brauchen

Sie brauchen Percent-Encoding immer dann, wenn Sie eine beliebige Zeichenkette in einen Teil einer Adresse einsetzen — einen Link mit einem Suchbegriff, einen Query-Parameter-Wert oder eine Redirect-Ziel-URL, die in einer anderen URL platziert wird. Ohne Kodierung kann ein & oder = im Wert für einen Trenner gehalten werden und den Parameter abschneiden.