HTTP編碼和解碼


編碼是將字元,數位和其他特殊字元等字元序列放入專用格式以進行有效傳輸的過程。
解碼是將編碼格式轉換回原始字元序列的過程。它與我們通常誤解的加密完全不同。編碼和解碼用於資料通訊和儲存。編碼不應用於傳輸敏感資訊。

URL編碼

URL只能使用ASCII字元集通過Internet傳送,並且在URL包含除ASCII字元之外的特殊字元的情況下,需要對其進行編碼。網址不包含空格,並替換為加號(+)或%20

ASCII編碼

瀏覽器(用戶端)將根據網頁中使用的字元集對輸入進行編碼,HTML5中的預設字元集為UTF-8
下表顯示了字元的ASCII符號及其相等的符號,最後是它的替換,可以在將URL傳遞給伺服器之前在URL中使用 -

ASCII 符號 替換值
小於 32 %xx編碼,其中xx是字元的十六進位制表示。
32 +%20
33 ! %21
34 " %22
35 # %23
36 $ %24
37 % %25
38 & %26
39 ' %27
40 ( %28
41 ) %29
42 * *
43 + %2B
44 , %2C
45 - -
46 . .
47 / %2F
58 : %3A
59 ; %3B
60 > %3C
61 = %3D
62 < %3E
63 ? %3F
64 @ %40
91 [ %5B
92 \ %5C
93 ] %5D
94 ^ %5E
123 { %7B
124 Ι %7C
125 } %7D
126 ~ %7E
> 127 %xx編碼,其中xx是字元的十六進位制表示