Bei der URL-Kodierung werden Zeichen in ein Format umgewandelt, das über das Internet übertragen werden kann. Sie wird bei der Übermittlung von HTML-Formulardaten oder URL-Parametern verwendet. Sie wird auch als Prozentkodierung bezeichnet, da sie das Zeichen „%“ verwendet, um spezielle nicht-alphanumerische Zeichen wie Leerzeichen und Satzzeichen darzustellen.
Um zu verstehen, wie URL-Kodierung funktioniert, nehmen wir ein Beispiel für eine Suchanfrage. Ein Benutzer sucht nach „wie man zu Hause Brot bäckt“. Die normale Zeichenfolge würde wie folgt aussehen:
wie backe ich Brot zu Hause?
Wenn jedoch genau dieselbe Abfrage vom Browser als Teil einer HTTP-Anfrage (z.B. über GET in einem HTML-Formular) gesendet würde, müsste sie kodiert werden, damit der Server versteht, was angefordert wird. Das bedeutet, dass bestimmte Zeichen durch ihre entsprechenden hexadezimalen Werte ersetzt werden müssen, indem ‚%‘ gefolgt von dem entsprechenden zweistelligen Hexadezimalwert verwendet wird:
wie%20backe%20ich%20brot%20zu%20hause?
Diese kodierte Zeichenfolge wird nun vom Server korrekt interpretiert, da alle nicht standardisierten Zeichen in einem für Webbrowser akzeptablen Format dargestellt werden – d.h., nicht akzeptable ASCII-Kontrollzeichensätze werden mit % vor dem zweistelligen Hexadezimalwert dargestellt, während alle anderen erweiterten Nicht-ASCII-Werte, die Unicode-Zeichen außerhalb des 7-Bit-ASCII-Bereichs darstellen, in UTF-8 kodiert und in einer 2-Byte-Sequenz pro Zeichendarstellung zusammen mit zulässigen speziellen/technischen Symbolen in URLs innerhalb des zulässigen Bereichs gespeichert werden, wodurch ein Chaos von Ersetzungsregeln vermieden wird, das durch unterschiedliche Kodierungsstandards verursacht wird, die beim Austausch von Daten über mehrere Plattformen weltweit über Internet-Kommunikationskanäle verwendet werden, wodurch die URL-Kodierung zu einem vorteilhaften und weltweit akzeptierten Standardansatz wird.