asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0
   关于 URL编码
   摘自 中国Perl协会 用户推广组   tsingson  951513547
http://perlchina.sun126.com/cgi-bin/ccb/index.cgi

对于 CGI 规范,数据传送由 GET 或 POST 两种请求方式传送。

[url "http://www.perlchina.net/cgi-bin/gforum/gforum.cgi?do%3Dpost_write%3Bforum%3D3=%B7%A2%B1%ED%D6%F7%CC%E2"][#ff2b0c]http://www.perlchina.net/cgi-bin/gforum/gforum.cgi?do%3Dpost_write%3Bforum%3D3=%B7%A2%B1%ED%D6%F7%CC%E2[/#ff2b0c][/url][#ff2b0c][/#ff2b0c]

[#ed0000][#090909]上面就是 GET 方式,典型的 URL编码[/#090909][/#ed0000]

[#ed0000][#090909]HTTP 1.0 规范要求 URL 数据以一种能用于几乎任何硬件和软件平台的方式编码。按这种方法组织的信息被称为 URL 编码。由服务器传送给脚本的几乎任何东西都是 URL 编码[/#090909][/#ed0000]

[#ed0000][#090909]作为 QUERY_STRING 或 PATH_INFO 内容传递的参数采用以下形式:
variable1=value1&variable2=value2[/#090909][/#ed0000]

[#ed0000][#090909]对于在表单 form 中定义的每个变量都是这样。
变量由 & 符号隔开
如果发送一个 & 符号,则必须被转义,即,以一个两位数字的16进制编码来代表字符。在 URL 编码中由百分号指示。
因此,%25 表示百分号本身(25是十六进制的,就是以 16 为基,代表百分号的 ASCII 码值)[/#090909]

所有127(7fhex) 以上,和 33 (21hex) 以下的所有字符都会被转义,这包含空格符,空格的转义符为 %20.
加号被解释为空格符。[/#ed0000]

[#ed0000]脚本处理之前必须进行分析与解码。
[/#ed0000] [hr] 

在很多 CGI 中,有以下代码 [indent]($key,$value)=split(/=/,$key_value);
$value=~tr/+/ /;
$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; #URL解码

最后一句代码就是对 URL 编码的参数进行解码还原。
那我们知道,所有中文编码都是 ASCII 在英文字符之上,所以,所有中文都会被编码。[/
posted on 2006-07-18 14:06 汪杰 阅读(967) 评论(1)  编辑 收藏 引用 所属分类: asp(javascrpt)

FeedBack:
# re: 关于 URL编码
2006-07-18 14:30 | 汪杰
URL 编码是一种浏览器用来打包表单输入的格式. 浏览器从表单中获取所有的name和其中的值 ,
将他们作为name/value参数编码, 移去那些不能传送的字符, 将数据排行等等,这些还取决于你用GET还是POST?作为URL的一部分或者分离地发给服务器. 不管哪种情况, 在服务器端的表单输入格式样子
象这样:theName=Ichabod+Crane&gender=male
URL编码遵循下列规则:
每对name/value由&符分开.
每对来自表单的name/value由=符分开. 如果用户没有输入值给这个name,那么这个name还是出现,只
是无值(象这样 "name=").
任何特殊的字符(就是那些不是简单的七位ASCII,如汉字) 将以百分符%用十六进制编码. 当然也包括
象 =, &, 和 % 这些特殊的字符.
  回复  更多评论
  
只有注册用户登录后才能发表评论。

<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(15)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

  •  

积分与排名

  • 积分 - 468991
  • 排名 - 6

最新随笔

最新评论

阅读排行榜

评论排行榜