SomeeLab.tools

URL-Encoder und -Decoder

Einen Query-Wert oder eine ganze Adresse prozentkodieren und wieder zurückwandeln. Kostenlos, ohne Anmeldung, direkt im Browser.

Für einen einzelnen Query-Wert. Maskiert auch & = ? / # , damit der Wert seinen Parameter nicht verlassen kann.

Ein Wert oder eine ganze Adresse

Die beiden Modi unterscheiden sich in fünf Zeichen: &, =, ?, / und #.

Ein Wert maskiert sie alle. Nehmen Sie ihn für alles, was innerhalb eines Parameters steht: einen Suchbegriff, ein Weiterleitungsziel. Setzen Sie eine unmaskierte URL hinter ?next=, wird das darin enthaltene & als Beginn eines neuen Parameters gelesen und Ihr Wert bricht dort ab.

Ganze Adresse lässt die strukturgebenden Zeichen unangetastet. Das passt, wenn Sie bereits eine funktionierende URL haben und nur Leerzeichen und Nicht-ASCII-Zeichen bereinigen wollen. Eine vollständige Adresse behält so die Schrägstriche in https://, der Link funktioniert weiter.

Eine Regel genügt: Bauen Sie einen Teil der Adresse, nehmen Sie ein Wert; haben Sie die Adresse schon, nehmen Sie ganze Adresse.

Leerzeichen: + oder %20

Beides begegnet einem, aber an verschiedenen Stellen. %20 ist die Standardform und gilt überall in einer URL. + stammt aus der älteren HTML-Formularkodierung und zählt nur innerhalb eines Query-Strings als Leerzeichen.

Ein + im Pfad ist ein echtes Pluszeichen. Wer einen Dateinamen nach Formularregeln dekodiert, benennt die Datei unbemerkt um. Dieses Werkzeug folgt dem Standard und erzeugt %20.

Doppelt kodierte Werte

Bleibt nach dem Dekodieren ein %2520 oder %253A übrig, wurde der Wert zweimal kodiert: Im zweiten Durchgang wurde das % selbst zu %25.

Meist passiert das, wenn Code einen bereits kodierten Wert erneut kodiert. Noch einmal dekodieren bringt den Text zurück, die eigentliche Lösung ist aber, den Ort der Kodierung festzulegen: genau einmal, dort wo der Wert in die URL eingesetzt wird, und überall sonst der Rohtext.

Zeichen, die unverändert bleiben

A-Z, a-z, 0-9 sowie -, ., _, ~ bilden die unreservierte Menge: Die Spezifikation erklärt sie für sicher, deshalb gehen sie unverändert durch. Das ist kein Fehler.

Nicht-ASCII-Zeichen werden länger: Ein Umlaut belegt zwei UTF-8-Bytes, ein chinesisches Zeichen drei, ein Emoji vier, und jedes Byte wird zu einem %XX-Paar. Deshalb wirkt eine kodierte Adresse plötzlich so lang.