Prozentkodierung
Prozentkodierung ist ein Mechanismus zur Kodierung von 8-Bit-Zeichen, die in Bezug auf URLs eine spezielle Bedeutung haben. Es wird manchmal auch als URL-Kodierung bezeichnet. Die Kodierung besteht aus einer Ersetzung: Ein '%' gefolgt von der hexadezimalen Darstellung des ASCII-Werts des zu ersetzenden Zeichens.
Spezielle Zeichen, die kodiert werden müssen, sind: ':'
, '/'
, '?'
, '#'
, '['
, ']'
, '@'
, '!'
, '$'
, '&'
, "'"
, '('
, ')'
, '*'
, '+'
, ','
, ';'
, '='
, sowie '%'
selbst. Andere Zeichen müssen nicht kodiert werden, obwohl sie kodiert werden könnten.
Zeichen | Kodierung |
---|---|
':' |
%3A |
'/' |
%2F |
'?' |
%3F |
'#' |
%23 |
'[' |
%5B |
']' |
%5D |
'@' |
%40 |
'!' |
%21 |
'$' |
%24 |
'&' |
%26 |
"'" |
%27 |
'(' |
%28 |
')' |
%29 |
'*' |
%2A |
'+' |
%2B |
',' |
%2C |
';' |
%3B |
'=' |
%3D |
'%' |
%25 |
' ' |
%20 oder + |
Je nach Kontext wird das Zeichen ' '
in ein '+'
übersetzt (wie in der Prozentkodierungsversion, die in einer application/x-www-form-urlencoded
Nachricht verwendet wird), oder in '%20'
wie in URLs.
Siehe auch
- Definition der Prozentkodierung in Wikipedia.
- RFC 3986, Abschnitt 2.1, wo diese Kodierung definiert ist.
encodeURI()
undencodeURIComponent()
— Funktionen zur Prozentkodierung von URLs.