URL Encoding Kodieren & Dekodieren
Kostenloses Online-URL Encoding-Kodieren & Dekodieren-Tool. 100% lokale Verarbeitung – Ihre Daten verlassen Ihr Gerät nie.
Ergebnis wird hier angezeigt...
Eingabe → Kodieren
Usage Guide
Über URL-Kodierung
URL-Kodierung (auch bekannt als Percent Encoding, definiert in RFC 3986) ist eine Kodierungsmethode, die Sonderzeichen in URLs in sichere Zeichen umwandelt. URLs erlauben nur eine Teilmenge von ASCII-Zeichen (Buchstaben, Zahlen und einige Sonderzeichen); andere Zeichen (wie Leerzeichen, Sonderzeichen) müssen kodiert werden, bevor sie in URLs verwendet werden können. Die URL-Kodierung konvertiert jedes Byte in das %XX-Format, wobei XX die hexadezimale Darstellung dieses Bytes ist. URL-Kodierung ist grundlegend für die Web-Entwicklung und wird häufig in URL-Parametern, Formularübermittlungen, HTTP-Anfragen und anderen Szenarien verwendet.
Verwendungsschritte
URL-Kodierung und -Dekodierung ist sehr einfach:
Kodierungsregeln
URL-Kodierung folgt diesen Regeln:
encodeURIComponent() behandelt die meisten Fälle korrekt.Häufige Kodierungsbeispiele
Hier sind URL-Kodierungen für einige häufige Zeichen:
Anwendungsszenarien
URL-Kodierung wird in verschiedenen Web-Entwicklungsszenarien weit verbreitet eingesetzt:
FAQ
Q: Was ist der Unterschied zwischen URL-Kodierung und Base64?
A: URL-Kodierung und Base64 werden beide für die Behandlung von Sonderzeichen verwendet, aber für unterschiedliche Zwecke. URL-Kodierung: 1) Zweck: Sonderzeichen sicher in URLs übertragen. 2) Format: %XX (z.B. %20). 3) Szenarien: URL-Parameter, Formularübermittlungen. Base64: 1) Zweck: Binärdaten in Textformat umwandeln. 2) Format: A-Z, a-z, 0-9, +, /. 3) Szenarien: Bilder einbetten, JWT, E-Mail-Anhänge. Auswahlempfehlung: 1) URL-Parameter: URL-Kodierung verwenden. 2) Binärdaten: Base64 verwenden. 3) Beide können kombiniert werden (z.B. Base64 kodieren, dann URL kodieren).
Q: Sollten Leerzeichen als %20 oder + kodiert werden?
A: Die Leerzeichen-Kodierung hängt vom URL-Ort ab. %20: 1) Verwendet im URL-Pfadteil (z.B. /path/hello%20world). 2) Verwendet im Fragment (nach #). 3) encodeURIComponent() kodiert Leerzeichen als %20. +: 1) Verwendet in Query-Strings (nach ?, z.B. ?q=hello+world). 2) application/x-www-form-urlencoded-Format verwendet +. Empfehlung: Verwenden Sie encodeURIComponent(), um einheitlich als %20 zu kodieren; Server verarbeiten + und %20 automatisch.
Q: Wie verwendet man URL-Kodierung in JavaScript?
A: JavaScript bietet drei URL-Kodierungsfunktionen mit unterschiedlichen Zwecken. encodeURIComponent(): Kodiert URI-Komponenten (Parameterwerte), empfohlen. Kodiert alle Sonderzeichen (außer A-Z, a-z, 0-9, -, _, ., ~). encodeURI(): Kodiert vollständige URI, bewahrt URI-Strukturzeichen (wie :, /, ?, &). Geeignet zum Kodieren vollständiger URLs. escape(): Veraltet, nicht empfohlen. Beispiel:// Parameterwert kodieren (empfohlen)
encodeURIComponent('Hallo Welt'); // 'Hallo%20Welt'
// Vollständige URL kodieren
encodeURI('https://example.com/hallo welt'); // 'https://example.com/hallo%20welt'
Dekodierung: Verwenden Sie decodeURIComponent() oder decodeURI().
Q: Wie werden Nicht-ASCII-Zeichen URL-kodiert?
A: Nicht-ASCII-Zeichen müssen zuerst in UTF-8-Bytes umgewandelt und dann im %XX-Format kodiert werden. Beispiel: “Hallo” → UTF-8-Bytes: 48 61 6C 6C 6F → URL-Kodierung: Hallo (ASCII, keine Kodierung nötig). JavaScript: encodeURIComponent('Schön') behandelt die UTF-8-Konvertierung automatisch. Hinweis: 1) Verschiedene Kodierungen (wie ISO-8859-1) erzeugen unterschiedliche Ergebnisse. 2) Der Server muss UTF-8 korrekt dekodieren. 3) Moderne Web-Anwendungen verwenden einheitlich UTF-8-Kodierung.
Q: Erhöht URL-Kodierung die Datengröße?
A: Ja, URL-Kodierung erhöht die Datengröße, wobei die Erhöhung vom Zeichentyp abhängt. ASCII-Zeichen: 1) Buchstaben, Zahlen: nicht kodiert, Größe unverändert. 2) Sonderzeichen (wie &, =): als 3 Bytes kodiert (%XX), 200% Erhöhung. Nicht-ASCII-Zeichen: 1) UTF-8-Kodierung: je nach Zeichen 1-4 Bytes, jedes als %XX kodiert. Optimierung: 1) POST-Anfragen für große Datenmengen verwenden. 2) JSON-Format in Betracht ziehen (keine URL-Kodierung erforderlich).
Q: Was ist der Unterschied zwischen URL-Kodierung und HTML-Entity-Kodierung?
A: URL-Kodierung und HTML-Entity-Kodierung werden in verschiedenen Szenarien verwendet. URL-Kodierung: 1) Zweck: Sonderzeichen in URLs übertragen. 2) Format: %XX (z.B. %20). 3) Szenarien: URL-Parameter, Formularübermittlungen. HTML-Entity-Kodierung: 1) Zweck: Sonderzeichen in HTML anzeigen. 2) Format: &name; (z.B. <) oder &#Zahl; (z.B. <). 3) Szenarien: HTML-Inhalt, Attributwerte. Beispiel: < → URL-Kodierung: %3C, HTML-Entity: < oder <.
Use Cases
Empfohlen: URL-Query-Parameter
Parameter in URL-Query-Strings zu übergeben ist die häufigste Anwendung von URL-Kodierung. Query-Strings beginnen mit ?, Parameter werden durch & getrennt, und Parameternamen und -werte werden mit = verbunden. Wenn Parameterwerte Sonderzeichen enthalten (wie Leerzeichen, &, =), müssen sie URL-kodiert werden. JavaScripts encodeURIComponent() kodiert Parameterwerte korrekt.
- ✅ encodeURIComponent() zum Kodieren von Parameterwerten verwenden
- ✅ URLSearchParams API zum Aufbau von Query-Strings verwenden
- ✅ Server verwendet entsprechende Dekodierungsfunktionen
- ❌ URL-Parameter nicht manuell verketten
- 💡 POST-Anfragen für große Datenmengen in Betracht ziehen
Empfohlen: HTML-Formularübermittlung
HTML-Formulare übermitteln Daten mit application/x-www-form-urlencoded-Kodierung, einer Variante der URL-Kodierung. Formulardaten werden im key=value&key=value-Format übermittelt, Leerzeichen werden als + kodiert, andere Sonderzeichen als %XX. Moderne Browser verarbeiten die Formularkodierung automatisch; Entwickler müssen normalerweise nicht manuell kodieren. Beim Aufbau von Formulardaten mit JavaScript (wie der Fetch API) ist jedoch manuelle Kodierung erforderlich.
- ✅ FormData API zur automatischen Kodierungsverarbeitung verwenden
- ✅ URLSearchParams zum Aufbau von Formulardaten verwenden
- ✅ Server dekodiert Formulardaten korrekt
- 💡 Für Datei-Uploads multipart/form-data verwenden
Empfohlen: RESTful API-Pfadparameter
In RESTful APIs können Ressourcenbezeichner Sonderzeichen enthalten (wie Leerzeichen, Schrägstriche), die URL-Kodierung erfordern. Zum Beispiel sollte /users/Max Mustermann als /users/Max%20Mustermann kodiert werden. Verwenden Sie encodeURIComponent(), um Pfadparameter zu kodieren und sicherzustellen, dass die API Ressourcenbezeichner korrekt parsen kann.
- ✅ encodeURIComponent() zum Kodieren von Pfadparametern verwenden
- ✅ Server dekodiert Pfadparameter korrekt
- ✅ IDs statt Namen als Ressourcenbezeichner verwenden
- 💡 URL-Template-Bibliotheken verwenden (wie path-to-regexp)
Empfohlen: OAuth-Authentifizierung
Parameter wie redirect_uri und state in OAuth-Authentifizierungsflows müssen URL-kodiert werden. Zum Beispiel ist redirect_uri typischerweise eine vollständige URL mit Query-Parametern, die als Ganzes kodiert werden muss, bevor sie als Parameterwert übergeben wird. Verwenden Sie encodeURIComponent(), um diese Parameter zu kodieren und sicherzustellen, dass der OAuth-Server sie korrekt parsen kann.
- ✅ encodeURIComponent() zum Kodieren von redirect_uri verwenden
- ✅ encodeURIComponent() zum Kodieren des state-Parameters verwenden
- ✅ Dekodiertes redirect_uri auf Gültigkeit prüfen
- 💡 OAuth-Bibliotheken verwenden (wie Passport.js) für automatische Verarbeitung
Empfohlen: Suchanfragen
Suchbegriffe müssen URL-kodiert werden, wenn sie in URLs übergeben werden. Zum Beispiel hat Google-Suche nach “hallo welt” die URL https://www.google.com/search?q=hallo+welt. Suchmaschinen verarbeiten URL-Kodierung automatisch; Benutzer müssen normalerweise nicht manuell kodieren. Beim Aufbau von Such-URLs (wie automatische Weiterleitungen) sollte encodeURIComponent() verwendet werden, um Suchbegriffe zu kodieren.
- ✅ encodeURIComponent() zum Kodieren von Suchbegriffen verwenden
- ✅ Mehrere Suchbegriffe verarbeiten (durch Leerzeichen oder + getrennt)
- ✅ Suchmaschinen-APIs in Betracht ziehen
- 💡 URLSearchParams zum Aufbau von Such-URLs verwenden
Empfohlen: URL-Kürzungsdienste
URL-Kürzungsdienste (wie bit.ly) müssen lange URLs kodieren, bevor sie gespeichert und übertragen werden. Lange URLs können Sonderzeichen enthalten (wie Query-Parameter), die URL-Kodierung erfordern. Verwenden Sie encodeURIComponent(), um lange URLs zu kodieren und sicherzustellen, dass der Kürzungsdienst sie korrekt parsen und wiederherstellen kann. Beachten Sie, dass Kürzungsdienste die kodierte URL typischerweise erneut kodieren, sodass die Dekodierung möglicherweise mehrere Durchläufe erfordert.
- ✅ encodeURIComponent() zum Kodieren langer URLs verwenden
- ✅ Dekodierte URLs auf Gültigkeit prüfen
- ✅ Mehrfach kodierte Fälle verarbeiten
- 💡 APIs von Kürzungsdiensten verwenden
Best-Practice-Empfehlungen
- encodeURIComponent() zum Kodieren von URL-Parameterwerten verwenden, encodeURI() zum Kodieren vollständiger URLs.
- Leerzeichen in Query-Strings werden als + kodiert, in Pfaden als %20; encodeURIComponent() einheitlich als %20 kodieren.
- Nicht-ASCII-Zeichen verwenden UTF-8-Kodierung; sicherstellen, dass der Server korrekt dekodiert.
- URL-Parameter nicht manuell verketten; URLSearchParams API oder FormData API für automatische Kodierungsverarbeitung verwenden.
- URL-Kodierung erhöht die Datengröße; für große Datenmengen POST-Anfragen oder JSON-Format verwenden.
- Dekodierte URLs auf Gültigkeit prüfen, um URL-Injection-Angriffe zu verhindern.