urlencode,什么是urlencode编码

大雄 386 2022-09-06

urlencode是一个函数,可将字符串以URL编码,用于编码处理。
URL编码(URL encoding),也称作百分号编码(Percent-encoding), 是特定上下文的统一资源定位符 (URL)的编码机制。
适用于统一资源标识符(URI)的编码,也用于为"application/x-www-form-urlencoded" MIME准备数据, 因为它用于通过HTTP的请求操作(request)提交HTML表单数据。
  • 中文名

  • 将字符串以URL编码

  • 外文名

  • UrlEncode

  • 函数种类

  • 编码处理

  • 返回值

  • 字符串

目录

  1. 1 函数介绍

  2. 2 编码原理

  3. 3 内容说明

  4. 4 用法

函数介绍

编辑 播报
UrlEncode:将字符串以URL编码
返回值:字符串
函数种类:编码处理

编码原理

编辑 播报
将需要转码的字符转为16进制,然后从右到左,取4位(不足4位直接处理),每2位做一位,前面加上%,编码成%XY格式。
比如:
空格ASCII码是32,对应16进制是20,那么urlencode编码结果是:%20,但在新标准中空格对应的是+,见RFC-1738
比如:
中ASCII码是-10544,对应的16进制是D6D0,那么urlencode编码结果是:%D6%D0

内容说明

编辑 播报
本函数将字符串以URL编码。例如空格就会变成加号。Homepage 中 form 资料传送就是用 urlencode 编码后再送出。
统一资源标识符(URI)所允许的字符分作保留与未保留,保留字符是那些具有特殊含义的字符。例如,斜线字符用于URL (或者更一般的, URI)不同部分的分界符,未保留字符没有这些特殊含义。百分号编码(Percent-encoding)把保留字符表示为特殊字符序列。上述情形随URI与URI的不同版本规格会有轻微的变化。
部分转换规则如下:
空格
!
#
$
%
+
@
:
=
?
%20
%21
%23
%24
%25
%2B
%40
%3A
%3D
%3F

用法

编辑 播报
ASP中的用法:
Server.URLEncode("内容")
例:
<%
response.write Server.UrlEncode("要转码的内容")
%>
PHP中的用法:
urlencode("内容");
例:
<?
echo urlencode("要转码的内容");
?>
JSP中的用法:
URLEncoder.encode("要转码的内容");
<%
java.net.URLEncoder.encode("要转码的内容","UTF-8"); // 原来单参数方法已经过时。
%>
C#/.net中的用法:
HttpContext.Current.Server.UrlEncode("转码的内容");
HttpUtility.UrlEncode(“转码的内容”);
VB.NET中的用法:
引用程序集System.Web
采用字符集GB2312来编码
Web.HttpUtility.UrlEncode("转码的内容", Encoding.GetEncoding("GB2312"))。
今天看文章中看到了urlencode,不理解 ,故上网查了查,看到了如下的答案,在此记录下,以加深印象 
urlencode编码:就是将字符串以URL编码,一种编码方式,主要为了解决url中中文乱码问题。

例如:

String   mytext   =   java.net.URLEncoder.encode("中国",   "utf-8");   //urlencode编码
String   mytext2   =   java.net.URLDecoder.decode(mytext,   "utf-8");   //urlencode解码
    
这两条语句在同一个页面中的话,得到的结果是:   
  mytext:   %E4%B8%AD%E5%9B%BD     
  mytex2:   中国


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:hdu1873 看病要排序 (2016xynu暑期集训检测 -----E题)
下一篇:微信公众号接口开发Api,API连接篇
相关文章

 发表评论

暂时没有评论,来抢沙发吧~