URL Encoder/Decoder FAQ
URL-Strings kodieren und dekodieren
Was ist URL-Kodierung?
URL-Kodierung (Prozent-Kodierung) ersetzt Sonderzeichen durch %XX wobei XX der hexadezimale ASCII/UTF-8-Wert ist. Leerzeichen wird %20, & wird %26. Dies ermöglicht, dass Sonderzeichen sicher in URLs übertragen werden, ohne ihre reservierten Bedeutungen auszulösen.
Wann sollte ich URL-kodieren?
Kodieren Sie jede Benutzereingabe, die in URLs platziert wird: Suchbegriffe, Namen, Beschreibungen oder jeder benutzer-kontrollierte String. Kodieren Sie nicht Dinge wie :/? im Basisteil einer URL – nur Werte. Verwenden Sie encodeURIComponent() in JavaScript für Parameterwerte.
Was ist der Unterschied zwischen encodeURI und encodeURIComponent?
encodeURI() lässt reservierte Zeichen (:/?&=) unkodiert, geeignet für ganze URLs. encodeURIComponent() kodiert alles außer alphanumerisch und -_.!~*'(), geeignet für Parameterwerte. Für die meisten Anwendungsfälle wollen Sie encodeURIComponent für Werte.
Warum sehe ich + statt %20 für Leerzeichen?
Historisch wurden Leerzeichen in Query-Strings als + kodiert (application/x-www-form-urlencoded). Modernes URL-Encoding bevorzugt %20 überall. Beide funktionieren in Query-Strings, aber nur %20 funktioniert in URL-Pfaden. Unser Tool verwendet %20 für universelle Kompatibilität.
Wie gehe ich mit Nicht-ASCII-Zeichen um?
Nicht-ASCII-Zeichen (ü, 中, و) werden zuerst zu UTF-8-Bytes konvertiert, dann wird jedes Byte prozent-kodiert. Das ü wird zu %C3%BC (UTF-8-Bytes C3 BC). Modernes URL-Encoding verwendet immer UTF-8 für internationale Zeichen.
Was ist Doppelkodierung?
Doppelkodierung passiert, wenn Sie einen bereits kodierten String kodieren: %20 wird zu %2520. Dies bricht URLs – sie zeigen buchstäblich %20 anstatt es als Leerzeichen zu interpretieren. Dekodieren Sie immer bevor Sie neu kodieren, wenn unklar ist, ob Eingabe bereits kodiert ist.