URL Encoder & Decoder
URLs, Query-Strings und Parameter prozentkodieren und decodieren, im Browser.
URL Encoder und Decoder - Text und Query-Strings online kodieren
Eine URL darf nur eine begrenzte Zeichenmenge enthalten. Alles andere - Leerzeichen, Umlaute, kaufmännisches Und, Schrägstriche innerhalb eines Werts, Emojis oder arabische und japanische Schrift - muss prozentkodiert werden, bevor es sicher in einem Link, einem Query-String oder einem Formular reisen kann. Dieser kostenlose URL Encoder und Decoder erledigt das sofort in beide Richtungen, ohne etwas an einen Server zu schicken.
Text einfügen und Kodieren klicken liefert eine transportsichere Zeichenkette; eine kodierte Adresse einfügen und Dekodieren klicken macht sie wieder lesbar. Über die Modusauswahl wechseln Sie zwischen encodeURIComponent und encodeURI - genau diese Entscheidung bestimmt, ob Ihr Link funktioniert oder still zerbricht.
Was ist URL-Kodierung?
Die URL-Kodierung, auch Prozentkodierung genannt, ersetzt ein unsicheres Zeichen durch ein Prozentzeichen gefolgt von seinem hexadezimalen Bytewert. Aus einem Leerzeichen wird %20, aus einem Schrägstrich %2F, aus einem Fragezeichen %3F. Zeichen außerhalb von ASCII werden zuerst in UTF-8-Bytes umgewandelt und dann Byte für Byte kodiert. Deshalb wird aus einem einzelnen Umlaut oft zwei Prozentgruppen und aus einem Emoji sogar vier.
encodeURIComponent oder encodeURI - welcher Modus?
| Situation | Modus | Grund |
|---|---|---|
| Einen einzelnen Parameterwert kodieren | encodeURIComponent | Maskiert &, =, ?, / und #, damit der Wert sein Feld nicht verlassen kann |
| Ein Pfadsegment wie einen Slug kodieren | encodeURIComponent | Verhindert, dass ein Schrägstrich im Wert eine neue Pfadebene erzeugt |
| Eine bereits vollständige URL bereinigen | encodeURI | Lässt die Strukturzeichen unangetastet, die Adresse bleibt eine gültige URL |
| Ein Redirect-Ziel in einer anderen URL übergeben | encodeURIComponent | Die innere URL ist ein Wert, keine Struktur |
URL online kodieren oder dekodieren
- Text, Parameterwert oder vollständige URL in das Eingabefeld einfügen.
encodeURIComponentfür einen einzelnen Wert wählen oderencodeURIfür eine ganze Adresse.- Auf Kodieren klicken zum Kodieren oder auf Dekodieren für den umgekehrten Weg.
- Das Ergebnis direkt in Ihren Code, die Adressleiste oder Ihren API-Client übernehmen.
Die häufigsten Zeichen
%20- Leerzeichen. In älteren Formularübertragungen erfüllt auch+diesen Zweck.%2F- Schrägstrich, kodiert, wenn er zum Wert und nicht zum Pfad gehört.%3Fund%26- Fragezeichen und Und-Zeichen, die Trenner der Query-Parameter.%3D- Gleichheitszeichen, das Parametername und Wert trennt.%23- Rautezeichen, sonst als Beginn eines Fragmentbezeichners gelesen.%2B- Pluszeichen, das kodiert werden muss, sonst wird es womöglich als Leerzeichen interpretiert.
Wann Sie einen URL Encoder brauchen
- Beim Bau von Such-, Filter- und Paginierungslinks, in deren Query-String Benutzereingaben landen.
- Beim Übergeben einer Rücksprungadresse als
redirect_urian einen OAuth-Anbieter oder ein Zahlungs-Gateway. - Beim Anhängen von UTM-Kampagnenparametern, die Leerzeichen oder Satzzeichen enthalten.
- Beim Dekodieren eines langen Tracking-Links aus einer E-Mail, um zu sehen, wohin er wirklich führt.
- Beim Debuggen eines API-Aufrufs, dessen Parameter JSON, einen Zeitstempel oder eine Signatur enthält.
- Bei nicht-lateinischen Slugs, damit ein persischer, japanischer oder kyrillischer Titel das Kopieren übersteht.
Fehler, die Links zerstören
- Doppelte Kodierung. Wird eine bereits kodierte Zeichenkette erneut kodiert, wird aus
%20ein%2520. Erst dekodieren, dann einmal kodieren. - Die ganze URL mit encodeURIComponent kodieren. Dabei werden
://und die Schrägstriche maskiert und die Adresse ist keine URL mehr. - Plus und %20 verwechseln. Im Query-String kann ein Plus ein Leerzeichen bedeuten, im Pfad steht es für ein echtes Plus.
- UTF-8 vergessen. Alte Seiten mit ISO-8859-1-Kodierung erzeugen Prozentgruppen, die ein moderner Decoder nicht zurückbilden kann.
- Einem dekodierten Wert vertrauen. Dekodieren ist keine Bereinigung - validieren Sie Eingaben, bevor sie in eine Abfrage oder ins HTML gelangen.
Läuft vollständig im Browser
Der Encoder nutzt die JavaScript-Funktionen Ihres eigenen Browsers. Es wird nichts hochgeladen, gespeichert oder protokolliert. So bleiben signierte URLs, Sitzungskennungen und Kundenparameter dort, wo sie hingehören: auf Ihrem Rechner.
URL-Encoding in JavaScript, Python, PHP, Java und C#
| Sprache | Einen Wert kodieren | Hinweis |
|---|---|---|
| JavaScript | encodeURIComponent(wert) | encodeURI für eine komplette Adresse |
| Python | urllib.parse.quote(wert, safe='') | quote_plus macht aus Leerzeichen + |
| PHP | rawurlencode($wert) | urlencode nutzt + für Leerzeichen |
| Java | URLEncoder.encode(wert, "UTF-8") | Erzeugt + für Leerzeichen; im Pfad durch %20 ersetzen |
| C# / .NET | Uri.EscapeDataString(wert) | HttpUtility.UrlEncode nutzt + |
| PowerShell | [uri]::EscapeDataString($wert) | Gleiche Regeln wie .NET |
Passende Werkzeuge
URLs und Nutzlasten gehören zusammen. Eingebettete Binärdaten dekodieren Sie mit dem Base64 Encoder, ein Token aus einer Callback-URL liest der JWT Decoder, die API-Antwort bringt der JSON Formatter in Form, und Muster prüfen Sie im Regex-Tester.