什么是URL编码? 当浏览器访问www服务器上的网页文件时,需要使用HTTP协议进行通信,在HTTP协议中,浏览器不能向服务器直接传递某些特殊字符,就必须对这些字符进行URL编码再传送,其规则如下:
1.将空格转换成加号(+);
2.对0~9,a~z,A~Z之间的字符保持不变;
3.对于其他的所有字符,用这个字符的当前字符集编码在内存中的十六进制格式表示,并在每个十六进制字节前加上一个百分号"%",例如,字符"+"用%2B表示,每个只用GB2312编码的中文字符在内存中的占两个字节,字符"中"用%D6%D0表示.值得注意的是,同一个中文字符在不同的字符集编码方式下,在内存中的编码值也是不一样的,一个字符的URL编码是针对字符在内存中的编码值而言的,采用不同编码的同一个字符的URL编码结果是不一样的.
在JAVA API中的java.net包中提供了URLEncoder和URLDecoder两个类,供我们方便实现URL编码和解码.下面来看几个小例子:
1.对于空格也可以直接使用其十六进制编码方式,即用%20表示,而不是转换成+号,按照上面说的第三条,很显然%20是可以解码成空格的.如下两个URL字符串的效果是一样的:
http://www.baidu.com/search.html?name=a+b&password=123
http://www.baidu.com/search.html?name=a%20b&password=123
2.如果确信URL串中的特殊字符不会引起歧义,也可以不对它们进行编码,例如:
http://www.baidu.com/search.html?name=中国&password=123
http://www.baidu.com/search.html?name=%D6%D0%B9%FA&password=123
上面的两个URL字符串,不管是否对其进行URL编码,结果都是一样的,注意:虽然规定了除数字和英文字符不对其URL编码,但这并不等于必须对其URL编码,只有在有可能引起歧义或冲突时才是必需的.看下面的例子:
如果要传递的name是"中+国",如果不对其进行URL编码,服务器就会认为传过来的是"中 国"."中&国"如果不进行URL编码就传给服务器变成了
http://www.baidu.com/search.html?name=中&国&password=123
我们知道,&这个字符在URL中是有特殊含义的.所以这个查询字符串的服务器端就被分成三段来解释.这样就不可能达到预期的结果.所以对这样的字符就必须进行URL编码.
分享到:
相关推荐
URL编码URL编码URL编码URL编码
vb url编码解码vb url编码解码vb url编码解码
搜集了网上的VBA函数,在excel中通过函数将汉字转为两种类型的URL编码,例如将 天空 二字转化为GB2312的“%CC%EC%BF%D5”或者是UTF-8的 “%E5%A4%A9%E7%A9%BA”。方便用于连接转换。VBA相关函数均来自网上,做了小小...
自己写的,可能有bug,请大家一块学习 环境为PB12 函数(及参数) 作用 arraysort 对一维数组进行排序 decto 将十进制数字转成其它进制字符串 ...urlencode 将指定字符串以进行指定字符集url编码 涨价了,哈哈
JS实现URL编码转换中文
C++URL编码和解码
今天写一个POST程序的时候有一段UNICODE字符串需要进行URL编码后进行提交。但是找遍了精易模块和百度都没有说有这这个命令 让Unicode字符串(易语言里面以字节集表示)直接进行正确的URL编码。所以就自己写了一个...
自动判断URL编码的方法。URL中包含编码的中文的时候,程序获取queryString需要根据url的不同编码,采用不同的解码方式,RequestQueryString方法能够自动识别url是用UTF-8编码还是GB2312编码,从而自动获取争取的值。...
这是一个URL编码转码工具,具体的功能和演示不发了。 实际功能是把网址转换为%hex 的形式。 1. 这个曾经是安全领域涉及到SQL注入破解屏蔽字符串的方法之一,但是现在已经很少用了 2. 这曾经是入侵大型网站(特别是...
可以在字符(ASCII、Unicode)和URL编码之间相互转换
url编码转换器url编码转换器
URL编码表一览,可以对照查询,方便编码或者对编码进行反编码
url编码工具,进行gbk格式编码,内涵两个工具类,可以用两种方式编码
URL编码解码器。
ASP.NET-(URL编码解码)开发人员工具ASP.NET-(URL编码解码)开发人员工具ASP.NET-(URL编码解码)开发人员工具ASP.NET-(URL编码解码)开发人员工具ASP.NET-(URL编码解码)开发人员工具ASP.NET-(URL编码解码)开发人员工具
URL编码转换工具 支持url地址的各种编码之间的转换 是网站维护工作必不可少的工具。
asp自定义函数:URL编码和解码
易语言URL编码转换模块源码.写提交的时候可能会用到。
二进制,十六进制,Base64, URL编码,字符编码,反查工具