URL-Percent-Encoding, kodieren und dekodieren, mit Unterstützung für nicht-ASCII-Zeichen
URL-Kodierung (auch Percent-Encoding genannt) ist ein Mechanismus, der Sonderzeichen in einer URL in ein % gefolgt von zwei Hexadezimalstellen umwandelt. Gemäß RFC 3986 darf eine URL nur eine Teilmenge von ASCII-Zeichen enthalten; andere Zeichen (wie nicht-ASCII-Zeichen, Leerzeichen und Sonderzeichen) müssen kodiert werden.
In JavaScript kodiert encodeURIComponent() URL-Abfrageparameter — es kodiert jedes Zeichen außer A-Z a-z 0-9 - _ . ! ~ * ' ( ). encodeURI() bewahrt URL-Strukturzeichen (wie : / ? # & =).
Häufige URL-Kodierungsszenarien sind: AJAX-Request-Parameterkodierung, Umgang mit nicht-ASCII-Zeichen in URL-Pfaden und Parameterkodierung in OAuth-Signaturen.
Eingabe: Hallo, Welt! → Ausgabe: Hallo%2C%20Welt!
Eingabe: hello world! → Ausgabe: hello%20world!
encodeURI kodiert keine URL-Strukturzeichen (:/?#&=+@$), eignet sich also zum Kodieren einer vollständigen URL; encodeURIComponent kodiert mehr Zeichen und eignet sich zum Kodieren von Abfrageparametern. Dieses Tool verwendet encodeURIComponent.encodeURIComponent kodiert ein Leerzeichen als %20. Im Format application/x-www-form-urlencoded (wie Formularübermittlung) werden Leerzeichen als + kodiert. Beides ist gültig.%XX um, einschließlich ASCII-Buchstaben und -Ziffern. Er ist in Sonderfällen nützlich, etwa wenn Sie den URL-Inhalt vollständig verbergen müssen.