URL kodieren, dekodieren und zerlegen
Kodiere und dekodiere Text prozentcodiert für URLs oder zerlege eine URL in Schema, Host, Pfad und Query und bearbeite die Query als Tabelle.
Codebeispiele
Kopieren Sie diese Beispiele in Ihr eigenes Projekt. Sie verwenden nur die Standardbibliothek der Sprache, es muss also nichts installiert werden.
const text = 'name=Zoë & co'
console.log(encodeURIComponent(text))Was es tut
Kodiert und dekodiert Text prozentcodiert für URLs und zerlegt eine URL in Schema, Host, Port, Pfad, Query und Fragment. Die Query erscheint als Tabelle mit Namen und Werten, die du bearbeiten kannst, und die URL wird beim Ändern neu aufgebaut.
So benutzt du es
- Tippe oder füge Text oder eine URL ein, ein Element pro Zeile, oder ziehe eine Textdatei hinein.
- Wähle einen Modus: Kodieren escapt alles, was in einem einzelnen Wert nicht sicher ist, URL kodieren behält die Struktur einer URL und escapt nur, was nicht vorkommen darf, Dekodieren liest Prozentcodierung und Zerlegen teilt eine URL in Teile.
- Ändere im Modus Zerlegen einen Parameter in der Query-Tabelle, füge einen hinzu oder entferne einen und kopiere die neu aufgebaute URL aus der Eingabe.
Beispiele
Einen Wert kodieren:
name=Zoë & co wird zu name%3DZo%C3%AB%20%26%20co. Die URL https://example.com/zoek?q=kaas en brood wird mit URL kodieren zu https://example.com/zoek?q=kaas%20en%20brood.
Gut zu wissen
- Ein Leerzeichen wird als
%20geschrieben. In der Query einer URL bedeutet ein+ebenfalls ein Leerzeichen; die Query-Tabelle liest es so. - Zeichen außerhalb von ASCII werden als UTF-8-Bytes kodiert:
éwird zu%C3%A9. - Zerlegen scheitert nie: Ein relativer Verweis wie
/a/b?x=1hat einfach kein Schema und keinen Host. - Dekodieren scheitert an einem
%ohne zwei folgende Hexziffern und an Escapes, die kein gültiges UTF-8 sind; diese Zeile wird übersprungen.
Was ist Prozentcodierung?
URLs können nur wenige sichere Zeichen enthalten. Alles andere, etwa ein Leerzeichen, ein Akzent oder ein kaufmännisches Und in einem Wert, wird als % und die zwei Hexziffern jedes Bytes geschrieben: Ein Leerzeichen wird zu %20 und é zu %C3%A9. Das Dekodieren kehrt es um.
Häufige Fragen
Was ist der Unterschied zwischen Kodieren und URL kodieren?
Kodieren escapt alles, was kein Buchstabe, keine Ziffer und keins von - . _ ~ ist, passend für einen einzelnen Wert wie einen Query-Parameter. URL kodieren lässt die Zeichen stehen, die einer URL ihre Struktur geben, wie : / ? # & und =, und escapt nur, was gar nicht vorkommen darf, etwa Leerzeichen und Akzente.
Warum wird ein Pluszeichen in der Query-Tabelle zum Leerzeichen?
Im Query-Teil einer URL steht ein + für ein Leerzeichen, eine Gewohnheit aus HTML-Formularen. Die Tabelle liest es so und schreibt ein Leerzeichen als %20 zurück, was jeder Parser akzeptiert.
Sendet dieses Werkzeug meine URLs irgendwohin?
Nein. Alles passiert in deinem Browser. Was du eingibst, wird nie an unsere Server gesendet.