URL-Kodierer & -Dekodierer mit integriertem URL-Parser
URL einfügen zum Dekodieren oder Kodieren in Echtzeit. Integrierter URL-Parser zerlegt jede Komponente in bearbeitbare Felder. Dualmodus: encodeURI & encodeURIComponent. Privat — keine Daten an Server.
Was ist URL-Kodierung?
URL-Kodierung, formal als Prozentkodierung bezeichnet, ist ein in RFC 3986 definierter Mechanismus zur Darstellung von Zeichen in einem Uniform Resource Identifier (URI), die nicht erlaubt sind oder eine besondere Bedeutung haben. Dabei wird jedes unsichere Byte in ein Prozentzeichen (%) gefolgt von zwei Hexadezimalziffern umgewandelt — beispielsweise wird ein Leerzeichen zu %20, ein kaufmännisches Und zu %26 und das chinesische Zeichen 中 zu %E4%B8%AD (seine drei UTF-8-Bytes, jeweils prozentkodiert).
URLs dürfen nur eine begrenzte Menge an Zeichen aus dem ASCII-Zeichensatz enthalten. Buchstaben, Ziffern und eine Handvoll Symbole (- _ . ~) gelten als „nicht reserviert“ und dürfen unverändert erscheinen. Alle anderen Zeichen — einschließlich Leerzeichen, Satzzeichen und der gesamte Unicode-Bereich — müssen prozentkodiert werden, um sicher in einer URL übertragen werden zu können. Reservierte Zeichen wie ?, &, = und # dienen als strukturelle Trennzeichen in der URL-Syntax und müssen daher ebenfalls kodiert werden, wenn sie als buchstäbliche Daten und nicht als Trennzeichen verwendet werden.
Prozentkodierung ist im gesamten Web unverzichtbar: Browser kodieren Formularübermittlungen, APIs erfordern kodierte Query-Parameter, OAuth-Flows hängen von korrekt kodierten Redirect-URIs ab, und internationalisierte Domainnamen nutzen die Kodierung für Nicht-ASCII-Zeichen. Fehlerhafte Kodierung führt zu defekten Links, Sicherheitslücken (wie Open-Redirect-Angriffen) und Datenkorruption.
Dieses Tool bietet sowohl den encodeURI- als auch den encodeURIComponent-Modus, einen integrierten URL-Struktur-Parser, Echtzeitumwandlung und Erkennung doppelter Kodierung — alles privat in Ihrem Browser.
URL-Kodierung wird oft zusammen mit anderen Webentwicklungstools verwendet. Möglicherweise müssen Sie eine URL Base64-kodieren, um sie in ein JWT-Token oder eine API-Payload einzubetten, oder JSON-Daten formatieren, die URL-Zeichenketten enthalten, um deren Struktur zu untersuchen.
// Encode a query parameter value
const param = encodeURIComponent('hello world & goodbye');
console.log(param); // → 'hello%20world%20%26%20goodbye'
// Encode a full URL (preserves structure)
const url = encodeURI('https://example.com/path name?q=hello world');
console.log(url); // → 'https://example.com/path%20name?q=hello%20world'
// Decode a percent-encoded string
const decoded = decodeURIComponent('hello%20world%20%26%20goodbye');
console.log(decoded); // → 'hello world & goodbye'
// Build a URL with encoded parameters
const base = 'https://api.example.com/search';
const query = `?q=${encodeURIComponent('你好')}&lang=zh`;
console.log(base + query); // → 'https://api.example.com/search?q=%E4%BD%A0%E5%A5%BD&lang=zh' Hauptfunktionen
Zwei Kodierungsmodi
Wechseln Sie zwischen encodeURI (bewahrt die URL-Struktur) und encodeURIComponent (kodiert alles für Parameterwerte), um genau Ihren Anwendungsfall abzudecken.
Integrierter URL-Parser
Zerlegt automatisch jede URL in Protokoll, Host, Port, Pfad, Query-Parameter und Fragment — jedes Feld ist bearbeitbar und kann zu einer neuen URL zusammengesetzt werden.
Echtzeitumwandlung
Kodieren und dekodieren Sie sofort beim Tippen — kein Klick auf Schaltflächen nötig, Ergebnisse erscheinen mit jedem Tastenanschlag im anderen Bereich.
100 % browserbasiert
Die gesamte Verarbeitung erfolgt lokal in Ihrem Browser mit nativen JavaScript-APIs. Ihre Daten verlassen niemals Ihr Gerät — kein Server-Upload, kein Tracking.
Volle UTF-8-Unterstützung
Verarbeitet korrekt chinesische, japanische, koreanische, arabische Zeichen, Emoji und jeden Unicode-Text durch ordnungsgemäße UTF-8-Byte-Kodierung und -Dekodierung.
Erkennung doppelter Kodierung
Erkennt automatisch und warnt vor Problemen mit doppelter Kodierung wie %2520 (ein prozentkodiertes %20), und hilft Ihnen, einen der häufigsten URL-Kodierungsfehler zu vermeiden.
Beispiele
Verstümmelte URL dekodieren
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world%26lang%3Den
https://example.com/search?q=hello world&lang=en
Eine vollständig prozentkodierte URL wird in ihre lesbare Form zurückverwandelt, sodass die ursprünglichen Query-Parameter und die Struktur sichtbar werden
Chinesische Zeichen
https://example.com/search?q=你好世界
https://example.com/search?q=%E4%BD%A0%E5%A5%BD%E4%B8%96%E7%95%8C
Chinesische Zeichen werden in ihre UTF-8-Bytefolgen umgewandelt und prozentkodiert
Query-Parameter
https://example.com/api?name=John Doe&role=admin&lang=en&sort=date desc
https://example.com/api?name=John%20Doe&role=admin&lang=en&sort=date%20desc
Leerzeichen und Sonderzeichen in Query-Parameter-Werten werden prozentkodiert, während die URL-Struktur erhalten bleibt
Vollständige URL
https://user:pass@example.com:8080/path/to/page?key=value&arr[]=1#section-2
https://user:pass@example.com:8080/path/to/page?key=value&arr%5B%5D=1#section-2
Eine vollständige URL mit Anmeldedaten, Port, Pfad, Query-Parametern mit eckigen Klammern und einem Fragment-Bezeichner
OAuth-Redirect-URI
https://auth.example.com/authorize?redirect_uri=https://myapp.com/callback?code=abc&state=xyz
https://auth.example.com/authorize?redirect_uri=https%3A%2F%2Fmyapp.com%2Fcallback%3Fcode%3Dabc%26state%3Dxyz
Der Wert von redirect_uri enthält selbst eine vollständige URL, die kodiert werden muss, damit ihre Sonderzeichen nicht als Teil der äußeren URL interpretiert werden
Anleitung
- 1
URL oder kodierten String eingeben
Fügen Sie eine URL im dekodierten Bereich ein, um sie zu kodieren, oder fügen Sie eine prozentkodierte Zeichenkette im kodierten Bereich ein, um sie zu dekodieren. Wählen Sie je nach Anwendungsfall den Modus encodeURI oder encodeURIComponent.
- 2
Ergebnisse und geparste Struktur anzeigen
Der andere Bereich aktualisiert sich sofort beim Tippen. Der URL-Parser zerlegt die URL in Protokoll, Host, Port, Pfad, Query-Parameter und Fragment — alles bearbeitbar.
- 3
Kopieren oder neu erstellen
Klicken Sie auf „Kopieren“, um das kodierte oder dekodierte Ergebnis zu kopieren. Bearbeiten Sie einzelne URL-Komponenten und klicken Sie auf „Neu erstellen“, um eine neue URL aus den geänderten Teilen zusammenzusetzen.
Häufige Fehler
Doppelte Kodierung (%2520 statt %20)
Doppelte Kodierung tritt auf, wenn eine bereits kodierte URL erneut kodiert wird. Das % in %20 wird zu %25 kodiert, wodurch %20 zu %2520 wird. Dies bricht die URL, da der Server die buchstäbliche Zeichenkette %20 statt eines Leerzeichens sieht.
https://example.com/path%2520with%2520spaces
https://example.com/path%20with%20spaces
Leerzeichen als + in Pfadsegmenten kodiert
Das +-Zeichen steht nur im application/x-www-form-urlencoded-Format (Query-Strings aus HTML-Formularen) für ein Leerzeichen. In URL-Pfadsegmenten wird + als buchstäbliches Pluszeichen interpretiert, nicht als Leerzeichen. Verwenden Sie für Leerzeichen in Pfadsegmenten immer %20.
https://example.com/my+file+name.pdf
https://example.com/my%20file%20name.pdf
encodeURI für Query-Parameter-Werte verwenden
encodeURI() kodiert &, = und andere reservierte Zeichen nicht. Die Verwendung auf einem Parameterwert, der diese Zeichen enthält, beschädigt die Query-String-Struktur.
encodeURI('key=value&more') → 'key=value&more' (& not encoded!) encodeURIComponent('key=value&more') → 'key%3Dvalue%26more' Nicht-UTF-8-Kodierung angenommen
Einige ältere Systeme verwenden Kodierungen wie Latin-1 oder Shift-JIS für URL-Parameter. Moderne Standards erfordern UTF-8. Die Dekodierung eines Shift-JIS-kodierten Parameters mit einem UTF-8-Decoder erzeugt beschädigten Text.
Decoding %82%B1%82%F1 as UTF-8 (this is Shift-JIS for こん)
Using UTF-8: %E3%81%93%E3%82%93 correctly decodes to こん
Relative Pfade ohne Kontext kodieren
Die Kodierung eines relativen Pfads wie ../images/photo.jpg mit encodeURIComponent wandelt Schrägstriche und Punkte in prozentkodierte Sequenzen um und zerstört die Pfadstruktur. Verwenden Sie encodeURI() oder kodieren Sie nur die einzelnen Pfadsegmente.
encodeURIComponent('../images/photo.jpg') → '..%2Fimages%2Fphoto.jpg' Encode each segment: '../images/' + encodeURIComponent('my photo.jpg') Häufige Anwendungsfälle
- Verstümmelte URLs debuggen
- Prozentkodierte URLs aus Server-Logs, Fehlermeldungen oder Browser-Entwicklertools dekodieren, um den ursprünglichen, lesbaren Text zu sehen.
- API-Entwicklung
- Query-Parameter-Werte für REST-API-Aufrufe kodieren und sicherstellen, dass Sonderzeichen wie &, = und Leerzeichen die Anfrage-URL nicht beschädigen.
- OAuth-Flow-Einrichtung
- redirect_uri und andere URL-Parameter in OAuth-Autorisierungs-URLs korrekt kodieren, um Authentifizierungsfehler zu vermeiden.
- Internationalisierte URLs
- URLs mit chinesischen, japanischen, koreanischen, arabischen oder anderen Nicht-ASCII-Zeichen für internationalisierte Webanwendungen kodieren und dekodieren.
- Marketing-Link-Analyse
- Tracking-URLs aus E-Mail-Kampagnen und Werbeplattformen dekodieren, um die eingebetteten UTM-Parameter und Weiterleitungsketten zu verstehen.
- URL-Struktur untersuchen
- Komplexe URLs in ihre Bestandteile zerlegen — Protokoll, Host, Port, Pfad, Query-Parameter und Fragment — zur Analyse und Bearbeitung.
Technische Details
- RFC 3986 — Reservierte und nicht reservierte Zeichen
- RFC 3986 definiert nicht reservierte Zeichen (A-Z, a-z, 0-9, -, ., _, ~), die niemals kodiert werden müssen, sowie reservierte Zeichen (:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =), die als URI-Trennzeichen dienen und prozentkodiert werden müssen, wenn sie als Daten verwendet werden.
- UTF-8-Byte-Kodierungsablauf
- Nicht-ASCII-Zeichen werden zunächst in ihren Unicode-Codepunkt umgewandelt, dann als UTF-8-Bytes kodiert (1-4 Bytes je nach Codepunkt-Bereich) und schließlich wird jedes Byte als %XX prozentkodiert. Beispiel: é (U+00E9) → UTF-8-Bytes C3 A9 → %C3%A9. Das Emoji 🎉 (U+1F389) → UTF-8-Bytes F0 9F 8E 89 → %F0%9F%8E%89.
- URL vs. URI — Begriffsklärung
- Eine URI (Uniform Resource Identifier) ist der allgemeine Begriff für jede Bezeichnerzeichenkette. Eine URL (Uniform Resource Locator) ist eine URI, die zusätzlich den Zugriffsmechanismus angibt (wie https://). Die Kodierungsregeln in RFC 3986 gelten für alle URIs. Die JavaScript-API verwendet die URI-Terminologie (encodeURI, decodeURI), während im Alltag der Begriff URL bevorzugt wird.
Best Practices
- Den richtigen Modus verwenden
- Verwenden Sie encodeURIComponent() für einzelne Query-Parameter-Schlüssel und -Werte. Verwenden Sie encodeURI() nur, wenn Sie eine vollständige URL haben und unsichere Zeichen kodieren möchten, ohne die Struktur zu zerstören. Verwenden Sie encodeURI() niemals für Parameterwerte, die &, = oder andere reservierte Zeichen enthalten können.
- Doppelte Kodierung vermeiden
- Prüfen Sie vor dem Kodieren einer Zeichenkette, ob sie bereits kodiert ist. Suchen Sie nach vorhandenen %-Sequenzen. Die Kodierung einer bereits kodierten Zeichenkette macht aus %20 → %2520, aus %3D → %253D usw. Wenn Sie unsicher sind, dekodieren Sie zuerst und kodieren Sie dann einmal.
- Serverseitig dekodieren
- Die meisten Web-Frameworks dekodieren URL-Parameter automatisch, bevor Ihr Anwendungscode sie sieht. Vermeiden Sie die manuelle Dekodierung von Parametern, die Ihr Framework bereits dekodiert hat — dies kann Probleme verursachen, wenn der ursprüngliche Wert buchstäbliche Prozentsequenzen enthielt.
- Werte für OAuth und API-Signierung kodieren
- OAuth 1.0 Signatur-Basis-Strings und viele API-Signierungsalgorithmen erfordern strikte RFC-3986-Prozentkodierung. Verwenden Sie encodeURIComponent() und ersetzen Sie dann verbleibende Zeichen, die nicht kodiert werden (wie !, ', (, ), *), durch ihre prozentkodierten Entsprechungen, wenn die Spezifikation dies erfordert.
Häufig gestellte Fragen
Was ist URL-Kodierung und warum ist sie notwendig?
Was ist der Unterschied zwischen encodeURI und encodeURIComponent?
Ist URL-Kodierung dasselbe wie HTML-Kodierung?
Warum bricht meine URL ab, wenn ich sie in einem curl-Befehl verwende?
Warum werden chinesische Zeichen in URLs zu Zeichenketten wie %E4%B8%AD?
Sollte ich den OAuth-Parameter redirect_uri kodieren?
Was ist der Unterschied zwischen Node.js querystring und URLSearchParams?
Wie kodiere ich eine URL in Python, JavaScript und Java?
Welche Zeichen werden bei der URL-Kodierung nicht kodiert?
Was ist der Unterschied zwischen + und %20 bei der Kodierung von Leerzeichen?
Wie behandelt die URL-Kodierung Emoji?
Kann URL-Kodierung zur Verschlüsselung oder Sicherheit verwendet werden?
Wie lang darf eine URL maximal sein?
Was ist der Unterschied zwischen einer URL und einer URI?
Verwandte Werkzeuge
Alle Werkzeuge anzeigen →Base64-Dekodierer & -Kodierer
Kodierung & Formatierung
Base64 online kostenlos dekodieren und kodieren. Echtzeitkonvertierung mit voller UTF-8- und Emoji-Unterstützung. 100 % privat — läuft in Ihrem Browser. Keine Anmeldung nötig.
JSON-Formatierer & Validator
Kodierung & Formatierung
JSON sofort im Browser formatieren, validieren und verschönern. Kostenloses Online-Tool mit Syntaxprüfung, Fehlererkennung, Minifizierung und Ein-Klick-Kopie. 100 % privat.
Zahlensystem-Konverter — Binär, Hex, Dezimal & Oktal
Konvertierungswerkzeuge
Zahlen zwischen Binär, Hexadezimal, Dezimal, Oktal und beliebigen Basen (2–36) sofort konvertieren. Kostenlos, privat, ohne Anmeldung — alles läuft in Ihrem Browser.
Bilder Online Komprimieren — JPEG, PNG & WebP
Konvertierungswerkzeuge
Bildgröße um bis zu 80 % reduzieren — JPEG, PNG & WebP im Browser komprimieren, kein Upload nötig. Stapelverarbeitung für 20 Bilder, Qualität anpassen, Vorher-Nachher vergleichen. Kostenlos & privat.
Längeneinheiten-Umrechner — Metrisch, Imperial & mehr
Konvertierungswerkzeuge
1 Zoll = 2,54 cm, 1 Fuß = 0,3048 m, 1 Meile = 1,609 km. Zwischen 16 Längeneinheiten sofort umrechnen — metrisch, imperial, nautisch & astronomisch. Kostenlos, privat, läuft im Browser.
MD5-Hash-Generator & Datei-Prüfsummen-Tool
Sicherheitswerkzeuge
MD5-, SHA-256-, SHA-1- & SHA-512-Hashes online kostenlos generieren. Text oder Dateien im Browser hashen, Prüfsummen verifizieren und Ergebnisse kopieren. Ohne Anmeldung.