命令值必須使用%xx轉義序列進行http編碼,這樣值字串就不包括保留字元「=」、「&」和「%」。
否則,會套用標準HTTP編碼規則。 HTTP規範要求對不安全字元以及任何控制字元(如<return>
和<tab>
)進行編碼。 字元的URL編碼由"%"符號組成,後面接著該字元的ISO-Latin代碼點的兩位十六進位表示(不區分大小寫)。 不安全的字元和代碼點為:
不安全字元 | 代碼點(十六進位) | 代碼點(12) |
---|---|---|
空間 |
20 |
32 |
<> |
3C |
60 |
> |
3E |
62 |
" |
22 |
34 |
# |
23 |
35 |
% |
25 |
37 |
{ |
7B |
123 |
} |
7D |
125 |
| |
7C |
124 |
\ |
5C |
92 |
^ |
5E |
94 |
~ |
7E |
126 |
[ |
5B |
91 |
] |
5D |
93 |
` |
60 |
96 |
保留的字元也必須經過編碼。
保留字元 | 代碼點(十六進位) | 代碼點(12月) |
---|---|---|
$ |
24 |
36 |
& |
26 |
38 |
+ |
2B |
43 |
, |
2C |
44 |
/ |
2F |
47 |
: |
3A |
58 |
; |
3B |
59 |
= |
3D |
61 |
? |
3F |
63 |
@ |
40 |
64 |
…&$text=rate&weight=85% 27#&…
如果未套用模糊化,則上述要求片段必須依下列方式編碼:
…&$text=rate%26weight%3D85%25%2027%23&…
如果套用了模糊化,則編碼可以限制為移除「=」、「&」和「%」字元:
…&$text=rate%26weight%3D85%25 27#&…