Form Encoding
Die Formular-Kodierung (application/x-www-form-urlencoded) ist die Art, wie HTML-Formulare Schlüssel-Wert-Paare beim Absenden kodieren, wobei Leerzeichen als + statt als %20 kodiert werden.
Zweck
Für frühe Webformular-Übermittlungen eine laxere Kodierung als RFC 3986 bieten und mit historischen Implementierungen kompatibel bleiben.
Mechanismus
Schlüssel und Werte werden jeweils prozentkodiert, aber ein Leerzeichen wird zu + statt %20; Paare werden mit = verbunden und durch & getrennt. Nicht-ASCII-Zeichen werden zuerst gemäß dem Zeichensatz der Seite (meist UTF-8) in Bytes umgewandelt und dann prozentkodiert.
Anwendungsfälle
- GET/POST-Übermittlung von HTML-Formularen
- Kodierung von OAuth-1.0-Signaturparametern
- API-Anfragekörper in application/x-www-form-urlencoded
- fetch-Body mit URLSearchParams
Beispiele
- Eingabe
a=hello world&b=a+bOutputa=hello+world&b=a%2BbSpace becomes +, and + becomes %2B
Häufige Fehler
- Encoding a space as %20 instead of +, causing server-side parsing differences
- Use URLSearchParams for form scenarios and encodeURIComponent for URL components
Verwandte Begriffe
URL Encoding
Die URL-Kodierung (Percent-Encoding) wandelt in URLs unzulässige Zeichen in die Form %HH um, sodass beliebige Daten sicher in URL-Komponenten stehen können. GLOSSAR
Percent-Encoding
Die Prozentkodierung ist der in RFC 3986 definierte Mechanismus, der unsichere Zeichen in URLs in die Form %HH umwandelt. GLOSSAR
URL
Eine URL (Uniform Resource Locator) ist eine Zeichenkette, die den Ort einer Internetressource identifiziert und aus Schema, Host, Port, Pfad, Query und Fragment besteht. GLOSSAR