Befehlswerte müssen mit %xx Escape-Sequenzen http-kodiert sein, sodass die Wertzeichenfolgen die reservierten Zeichen '=', '&' und '%' nicht enthalten.
Andernfalls gelten die standardmäßigen HTTP-Kodierungsregeln. Die HTTP-Spezifikation erfordert die Kodierung der unsicheren Zeichen sowie aller Steuerzeichen wie <return>
und <tab>
. Die URL-Kodierung eines Zeichens besteht aus einem "%"-Symbol, gefolgt von der zweistelligen hexadezimalen Darstellung (ohne Groß-/Kleinschreibung) des ISO-Latin-Codepunkts für das Zeichen. Unsichere Zeichen und Codepunkte sind:
Unsicheres Zeichen | Codepunkte (hex) | Codepunkte (dec) |
---|---|---|
Leerzeichen |
20 |
32 |
<> |
3C |
60 |
> |
3E |
62 |
" |
22 |
34 |
# |
23 |
35 |
% |
25 |
37 |
&lbrace |
7 B |
123 |
&rbrace |
7 D |
125 |
| |
7C |
124 |
\ |
5C |
92 |
^ |
5E |
94 |
~ |
7E |
126 |
[ |
5B |
91 |
] |
5D |
93 |
` |
60 |
96 |
Reservierte Zeichen müssen ebenfalls kodiert sein.
Reservierte Zeichen | Codepunkte (Hex) | Codepunkte (Dez.) |
---|---|---|
$ |
24 |
36 |
& |
26 |
38 |
+ |
2B |
43 |
, |
2C |
44 |
/ |
2F |
47 |
: |
3 A |
58 |
; |
3 B |
59 |
= |
3 D |
61 |
? |
3F |
63 |
@ |
40 |
64 |
…&$text=rate&weight=85% 27#&…
Wenn die Verschleierung nicht angewendet wird, muss das obige Anforderungsfragment wie folgt kodiert werden:
…&$text=rate%26weight%3D85%25%2027%23&…
Wenn die Verschleierung angewendet wird, kann die Kodierung darauf beschränkt sein, die Zeichen '=', '&' und '%' zu entfernen:
…&$text=rate%26weight%3D85%25 27#&…
Verschleierung von Anfragen, HTTP/1.1-Spezifikation (RFC 2616)