jakup

Für Query-Werte & Pfadteile. Kodiert reservierte Zeichen (/, ?, &, = …). (encodeURIComponent)

Der Komponenten-Modus kodiert alle reservierten Zeichen (ideal für Query-Werte); der Ganze-URL-Modus behält : / ? # & = (ideal für ganze Adressen). Leerzeichen werden standardmäßig zu %20, mit der Formular-Option zu +.

Warum URLs kodiert werden müssen

Eine URL darf nur Buchstaben, Ziffern und wenige Zeichen enthalten. Leerzeichen, nichtlateinische Zeichen und Symbole wie & ? = zerstören die Adresse oder ändern ihre Bedeutung, wenn man sie direkt einsetzt. Die URL-Kodierung schreibt solche Zeichen als Prozentzeichen mit Hexadezimalziffern.

Aus einem Leerzeichen wird %20, aus einem Und-Zeichen %26; ein nichtlateinisches Zeichen wird unter UTF-8 meist zu mehreren %XX-Gruppen. Relevant wird das beim Teilen eines Links mit Suchbegriff, beim Einsetzen eines Werts in einen Query-String oder wenn ein Link im Messenger zerbricht.

Umgekehrt lässt sich eine prozentlastige Adresse wieder in lesbaren Text zurückverwandeln — praktisch, um im Log zu sehen, über welchen Suchbegriff jemand kam. Werte werden nur im Browser umgewandelt und nie an einen Server gesendet.