参考网址:http://www.w3schools.com/cn/tags/ref_urlencode.asp
URL编码(URL encoding)的作用是将字符转化为可在因特网上安全传输的格式。
URL——统一资源定位符
Web浏览器通过URL从Web服务器上请求页面。
URL就是网页的地址
URL编码
在因特网上传送URL,只能采用ASCII字符集。
但由于URL常常包含ASCII字符集以外的字符,所以我们必须对URL进行转换。URL编码要做的,就是将URL转换为有效的ASCII字符格式。
在进行URL编码时,每一个非安全的ASCII字符都被替换为“%hh”格式,其中hh为两位十六进制数,它对应于该字符在ISO-8859-1字符集里的编码值。
URL字符串里不能含有空格,在进行URL编码时,空格全部被替换为加号(+)。
其实url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上“%”。比如“/”,它的ascii码是92,92的十六进制是 5c,所以“/”的url编码就是%5c。
汉字的url编码
看例子:“胡”的ascii码是-17670,十六进制是BAFA,url编码是 “%BA%FA”。
URL编码函数
JavaScript、PHP和ASP都提供了进行URL编码的函数。
在JavaScript中用encodeURI()函数进行URL编码,在PHP中用rawurlencode()函数,在ASP中用Server.URLEncode()函数。
注意:JavaScript的URL编码函数将把空格编码为%20。
URL编码:此表因为便于查询,便放在此处,详表见后面 URL编码参考手册
URL 编码 - 从 %00 到 %8fASCII ValueURL-encodeASCII ValueURL-encodeASCII ValueURL-encode
&230;%000%30`%60
%011%31a%61
%022%32b%62
%033%33c%63
%044%34d%64
%055%35e%65
%066%36f%66
%077%37g%67
backspace%088%38h%68
tab%099%39i%69
linefeed%0a:%3aj%6a
%0b;%3bk%6b
%0c
c return%0d=%3dm%6d
%0e>%3en%6e
%0f?%3fo%6f
%10@%40p%70
%11A%41q%71
%12B%42r%72
%13C%43s%73
%14D%44t%74
%15E%45u%75
%16F%46v%76
%17G%47w%77
%18H%48x%78
%19I%49y%79
%1aJ%4az%7a
%1bK%4b{%7b
%1cL%4c|%7c
%1dM%4d}%7d
%1eN%4e~%7e
%1fO%4f%7f
space%20P%50&8364;%80
!%21Q%51%81
"%22R%52&8218;%82
%23S%53&402;%83
$%24T%54&8222;%84
%%25U%55…%85
&%26V%56&8224;%86
&39;%27W%57&8225;%87
(%28X%58&710;%88
)%29Y%59‰%89
*%2aZ%5a&352;%8a
+%2b[%5b&8249;%8b
,%2c%5c&338;%8c
-%2d]%5d%8d
.%2e^%5e&381;%8e
/%2f_%5f%8f
URL 编码 - 从 %90 到 %ffASCII ValueURL-encodeASCII ValueURL-encodeASCII ValueURL-encode
%90&192;%c0&240;%f0
‘%91&193;%c1&241;%f1
’%92&194;%c2ò%f2
“%93&195;%c3ó%f3
”%94&196;%c4&244;%f4
&8226;%95&197;%c5&245;%f5
–%96&198;%c6&246;%f6
—%97&199;%c7÷%f7
&732;%98&200;%c8&248;%f8
&8482;%99&201;%c9ù%f9
&353;%9a&202;%caú%fa
&8250;%9b&203;%cb&251;%fb
&339;%9c&204;%ccü%fc
%9d&205;%cd&253;%fd
&382;%9e&206;%ce&254;%fe
&376;%9f&207;%cf&255;%ff
%a0&208;%d0
&161;%a1&209;%d1
&162;%a2&210;%d2
&163;%a3&211;%d3
%a4&212;%d4
&165;%a5&213;%d5
|%a6&214;%d6
§%a7%d7
¨%a8&216;%d8
&169;%a9&217;%d9
&170;%aa&218;%da
&171;%ab&219;%db
&172;%ac&220;%dc
&175;%ad&221;%dd
&174;%ae&222;%de
&175;%af&223;%df
°%b0à%e0
±%b1á%e1
&178;%b2&226;%e2
&179;%b3&227;%e3
&180;%b4&228;%e4
&181;%b5&229;%e5
&182;%b6&230;%e6
·%b7&231;%e7
&184;%b8è%e8
&185;%b9é%e9
&186;%baê%ea
&187;%bb&235;%eb
&188;%bcì%ec
&189;%bdí%ed
&190;%be&238;%ee
&191;%bf&239;%ef
URL编码参考手册ASCII字符URL编码
空格%20
!%21
"%22
%23
$%24
%%25
&%26
&39;%27
(%28
)%29
*%2A
+%2B
,%2C
-%2D
.%2E
/%2F
0%30
1%31
2%32
3%33
4%34
5%35
6%36
7%37
8%38
9%39
:%3A
;%3B
=%3D
>%3E
?%3F
@%40
A%41
B%42
C%43
D%44
E%45
F%46
G%47
H%48
I%49
J%4A
K%4B
L%4C
M%4D
N%4E
O%4F
P%50
Q%51
R%52
S%53
T%54
U%55
V%56
W%57
X%58
Y%59
Z%5A
[%5B
%5C
]%5D
^%5E
_%5F
`%60
a%61
b%62
c%63
d%64
e%65
f%66
g%67
h%68
i%69
j%6A
k%6B
l%6C
m%6D
n%6E
o%6F
p%70
q%71
r%72
s%73
t%74
u%75
v%76
w%77
x%78
y%79
z%7A
{%7B
|%7C
}%7D
~%7E
%7F
&8364;%80
%81
&8218;%82
&402;%83
&8222;%84
…%85
&8224;%86
&8225;%87
&710;%88
‰%89
&352;%8A
&8249;%8B
&338;%8C
%8D
&381;%8E
%8F
%90
‘%91
’%92
“%93
”%94
&8226;%95
–%96
—%97
&732;%98
&8482;%99
&353;%9A
&8250;%9B
&339;%9C
%9D
&382;%9E
&376;%9F
%A0
&161;%A1
&162;%A2
&163;%A3
%A4
&165;%A5
|%A6
§%A7
¨%A8
&169;%A9
&170;%AA
&171;%AB
&172;%AC
&175;%AD
&174;%AE
&175;%AF
°%B0
±%B1
&178;%B2
&179;%B3
&180;%B4
&181;%B5
&182;%B6
·%B7
&184;%B8
&185;%B9
&186;%BA
&187;%BB
&188;%BC
&189;%BD
&190;%BE
&191;%BF
&192;%C0
&193;%C1
&194;%C2
&195;%C3
&196;%C4
&197;%C5
&198;%C6
&199;%C7
&200;%C8
&201;%C9
&202;%CA
&203;%CB
&204;%CC
&205;%CD
&206;%CE
&207;%CF
&208;%D0
&209;%D1
&210;%D2
&211;%D3
&212;%D4
&213;%D5
&214;%D6
%D7
&216;%D8
&217;%D9
&218;%DA
&219;%DB
&220;%DC
&221;%DD
&222;%DE
&223;%DF
à%E0
á%E1
&226;%E2
&227;%E3
&228;%E4
&229;%E5
&230;%E6
&231;%E7
è%E8
é%E9
ê%EA
&235;%EB
ì%EC
í%ED
&238;%EE
&239;%EF
&240;%F0
&241;%F1
ò%F2
ó%F3
&244;%F4
&245;%F5
&246;%F6
÷%F7
&248;%F8
ù%F9
ú%FA
&251;%FB
ü%FC
&253;%FD
&254;%FE
&255;%FF
ASCII设备控制字符(%00到%1F)原来是用于控制硬件设备的。这里控制字符在URL里不起作用。ASCII字符描述URL编码
NULnull字符%00
SOH标题开始(start of header)%01
STX文本开始(start of text)%02
ETX文本结尾(end of text)%03
EOT传输结束(end of transmission)%04
ENQ查询(enquiry)%05
ACK确认(acknowledge)%06
BEL响铃(bell)%07
BS退格(backspace)%08
HT水平制表符(horizontal tab)%09
LF换行(line feed)%0A
VT垂直制表符(vertical tab)%0B
FF换页(form feed)%0C
CR回车(carriage return)%0D
SO移出(shift out)%0E
SI移入(shift in)%0F
DLE数据通讯换码(data link escape)%10
DC1设备控制1(device control 1)%11
DC2设备控制2(device control 2)%12
DC3设备控制3(device control 3)%13
DC4设备控制4(device control 4)%14
NAK否定应答(negative acknowledge)%15
SYN同步(synchronize)%16
ETB传输块结束(end of transmission block)%17
CAN取消(cancel)%18
EM媒体结束(end of medium)%19
SUB替代(substitute)%1A
ESC转义(escape)%1B
FS文件分隔符(file separator)%1C
GS组分隔符(group separator)%1D
RS记录分隔符(record separator)%1E
US单元分隔符(unit separator)%1F