URL-Encoding (URL-Kodierung, aa Prozentkodierung gnannt) is a Mechanismus, dea dazu dient, Informationa in oana URL unta bestimmtn Gegebnheitn zua kodian. Zua Kodiarung wean nur bestimmte Zeichn des ASCII-Zeichnsatz vawendt.

Ohne de Kodiarung wärn einige Informationa ned in oana URL dostäibor. Beispuisweis wia a Laarzeichn in olla Regl vom Browser ois Ende dea URL intapretiat, nochfoignde Zeichn wean ignoriert oda fian zua an Feha. Mid dea URL-Kodiarung konn a Laarzeichn duach de Zeichnfoig %20 iwagem wean. RFC 3986 definiert an Standard, wia a URI (und domi aa a URL) syntaktisch afbaut sa soi und unta welchn Bedingunga de URL-Kodiarung Owendung findt.

Aa fia ned im ASCII-Zeichnsatz enthoitnde Zeichn wiad de URL-Kodierung mid dem Prozentzeichn eigsetzt. Hier gibt es jedoch bisher nur a Empfehlung im RFC 3986, an vabindlichn Standard gibts no ned.

Resavierte und ned resavierte Zeichn Werkeln

URLs könn aas foigndn Teiln bstäi:

https://max:muster@www.example.com:8080/index.html?p1=A&p2=B#ressource
\___/   \_/ \____/ \_____________/ \__/\_________/ \_______/ \_______/
  |      |    |           |         |       |          |         |
Schema   | Kennwort      Host      Port    Pfad      Query    Fragment
      Benutzer

Bestimmte Zeichn innahoib des Aasdrucks kennzeichnen und trennan de onzlna Segmente dea URL und eameglichn a Zerlegung und Vaoabatung des Aasdrucks. Bei oan HTTP-Zuagriff beispuisweis:

Weidare Zeichn ham spezifische Bedeitunga im Dokumentnpfad. Foignde Zeichn gejtn ois resaviert:

  • : / ? # [ ] @ ! $ & ' ( ) * + , ; =

Foignde Zeichn san ned resaviert, besitzn oiso in oana URL koa vorgem Bedeitung:

  • Buachstom: A–Z, a–z
  • Ziffan: 0–9
  • - . _ ~

Prozentdostäiung Werkeln

A URL bstäid aas den gnanntn resaviertn und nicht resavierten Zeichn. Sie derf koane andan Zeichn enthoitn. Es bsäid jedoch prinzipiell dea Bedarf, in URLs beliebige Byte-Foign – oiso sämtliche Werte zwischn 0 und 255 – dozuastäin. Zudem muass a Meglichkeit existian, resavierte Zeichn in oana URL derart schreim zu könn, dass sie ihre speziejn Bedeitungen valiern.

De Prozentdostäiung vo Zeichn trogt beidn Fordarunga Rechnung. Ihr zuagrunde liegt a Kodiarungsvafohrn, des jedem Zeichncode a dreistellige Zeichnkombination zuaordnet, de mid dem Prozentzeichn beginnt, dem de zwoaziffrige hexadezimale Dostäiung ds Zeichencodes foigt.

A resavierts Zeichn muass in oana URL in prozentkodiata Form gschrim wean, wenn es an dea Stej, an dea es se befindet, a besondare Bedeitung hod, de aba im vorliegendn Kontext ned ham soi. Ned resavierte Zeichn könn, soiten aba ned, prozentkodiat wan. Bei andan Zeichn (unta andan Binärdatn) bstäid meist gor koa andare Meglichkeit, ois sie in oana URL in prozentkodierta Form dozuastäin (Aasnahmae: reservierts Zeichn ‚+‘ anstej vo oan Leaarzeichn im Query-String).

Beispui:

Laut ASCII is dem Zeiche ‚#‘ deahexadezimale Zeichncode 23 zuagordnet. Somid stöid dea Aasdruck ‚%23‘ de prozent-kodiate Form des Zeichns ‚#‘ do.

De Interpretation vo:

http://www.example.net/index.html?session=A54C6FE2#info

is eindeutig. Es is a URL-Parameter namens session definiat woan, dem dea Wert A54C6FE2 zuagewiesn is, sowia dea Dokumentnank namens info ogem. Des Zeichn ‚#‘ hod in dem vorliegendn Kontext de besondare Bedeitung, dass ihm dea Nam vo aon Dokumentnankas foigt. Soi es de Bedetung valiern, d. h. dem URL-Parameter session dear Wert A54C6FE2#info zuagwiesn wiad, so muass des Zeichn ‚#‘ in prozent-kodiata Form in dea URL stäi:

http://www.example.net/index.html?session=A54C6FE2%23info

In dea Praxis wiad dea Mechanismus ned imma einheitlich ogwendt. Es gibt jedoch Fälle, in denen de Veawendung nötig is, beispuisweis beim Aafruaf vo an Anka iwa oan Dereferrerdienst.

Relevante ASCII-Zeichen in Prozentdostäiung Werkeln

! " # $ % &amp; ' ( ) <span typeof="mw:Nowiki" id="mwfg">*</span> + , - . / : ; &lt; = &gt; ? @ <span typeof="mw:Nowiki" id="mwpg">[</span> <span typeof="mw:Nowiki" id="mwqg">\</span> <span typeof="mw:Nowiki" id="mwrg">]</span> <span typeof="mw:Nowiki" id="mwsg">{</span> <span typeof="mw:Nowiki" id="mwtg">|</span> <span typeof="mw:Nowiki" id="mwug">}</span>
%20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %2A %2B %2C %2D %2E %2F %3A %3B %3C %3D %3E %3F %40 %5B %5C %5D %7B %7C %7D

Im Netz Werkeln

  • RFC 3986 – Uniform Resource Identifier (URI): Generic Syntax
  • RFC 3987 – Internationalized Resource Identifiers (IRIs) bieten eine eindeutig unterscheidbare Alternative zur Darstellung von URIs mit Unicode-Zeichen und verwenden eine erweiterte Variante der URL-Kodierung

Beleg Werkeln