在提交表单时,浏览器会根据请求URL生成相应的请求报文给服务器。在这个过程中,浏览器会将请求地址转换为application/x-www-form-urlencoded MIME编码的字符串先,如下图中在这个编码规范中把utf-8的中文字符“陈”转换成“%E9%99%88”
application/x-www-form-urlencoded编码规范是:
1.字符‘a’-‘z’、‘A’-‘Z’、‘0’-‘9’不变
2.特殊字符‘.’、‘-’、‘*’、‘_’不变
3.空字符“ ”转成“+”
4.其他字符都视为不安全,都进行转换,每一个byte根据一些规则转换成%xy形式,其中‘xy’是两个16进制数字表示一个byte。
以上面例子来解释。“陈”的unicode码是0x9648,二进制表示就是1001 0110 0100 1000,在utf-8的编码方式中需要3个byte来表示:11101001 10011001 10001000。用十六进制表示这三个byte就是E9、99,88。
URLEncode,URLDecode就是实现这个规范的编解码类,在看URLEncode源码时卡了两下,一个是String.charAt(i)返回的“陈”的unicode码(原因看下面),不过想想也是char是两byte的,当然不可能返回三个byte的2进制(String内部就是维护一个char数组)。另一个是char Character.forDigit(int digit,int radix)方法,这个方法参数radix是一个>=2 && <=36的值,radix的表示进制,10就是十进制。digit是一个>0 && <radix的数字。这个方法的作用就是在指定进制下一个数字的表达形式,其中超过9的就用小写字母接上。比如Character.forDigit(11,16)就是返回字符‘b’。
还有就是URLEncode的研发这位Herb Jellinek写代码过程用System.out.println()测试可以理解,不过直接把打印代码直接注释就提交有点丑了吧
相关推荐
在深入理解JavaScript实现UrlEncode和UrlDecode函数的过程中,我们需要理解几个关键点:首先,URL编码和解码在Web开发中是一种常见的需求,用于确保URL中的特殊字符被正确传输。其次,JavaScript提供了一些内置的...
`urlencode` 和 `urldecode` 就是用于此目的的两个关键函数。本篇文章将深入探讨这两个概念及其在Xcode中使用C++混编的实现。 `urlencode` 是一种编码方法,其目的是将非ASCII字符或者在URL中具有特殊含义的字符...
今天小编就为大家分享一篇Python3中urlencode和urldecode的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
在IT行业中,`urlEncode` 和 `urlDecode` 是两个非常关键的概念,它们主要用于处理URL(统一资源定位符)中的特殊字符。理解这两个概念对于网页开发、数据传输以及网络编程至关重要。 `urlEncode` 是一个过程,它将...
本文主要讨论如何在ASP中实现URLEncode和URLDecode这两个功能,以便正确地处理URL中的特殊字符和编码问题。 首先,URL编码(URLEncode)是为了在URL中传递非ASCII字符或特殊字符时避免产生错误。URL中不能包含某些...
总之,UrlEncode和UrlDecode是处理URL的关键技术,确保了网络数据的正确传递。这个工具简化了编码解码的过程,方便了开发者和普通用户的使用。通过深入研究相关的源代码或工具,可以加深对URL编码机制的理解,提升...
UrlEncode和UrlDecode是两个关键的概念,它们涉及到URL(统一资源定位符)的处理。本工具旨在提供一个方便、高效的解决方案,支持URL编码和解码的双向操作。 URL编码,也称为Percent-encoding,是URI(统一资源...
在Web开发中,URL编码(urlencode)和URL解码(urldecode)是常见的需求。这主要是为了确保URL的正确传输和使用,尤其是在URL的路径或查询字符串中包含特殊字符时。PHP中的urlencode和urldecode函数是处理这一需求的...
URL编解码主要包括两个部分:URLEncode和URLDecode。URLEncode是将URL中的非字母数字字符转换为ASCII码的百分号编码形式,如空格通常会被转换为"%20"。这样做的原因是URL中不能包含某些字符,如空格、引号等,它们...
自己写的,可能有bug,请大家一块学习 环境为PB12 函数(及参数) 作用 arraysort 对一维数组进行排序 ...urldecode 将指定字符串以进行指定字符集url解码 urlencode 将指定字符串以进行指定字符集url编码 涨价了,哈哈
总结来说,自定义urlencode和urldecode函数可以帮助开发者解决在特定场景下遇到的问题,使得URL编码和解码过程更符合项目的实际需求。通过本文提供的代码实例,我们可以学习如何实现这样的自定义函数,并在自己的...
这个是 utf-8版本的 js实现 php的 urlencode() 和 urldecode()两个函数的功能。 在传送cookie的时候 在 php端实现 url编码 但要用 js来解码cookie的时候 就出现汉字不能不能识别的问题 这个 js 很好的解决
总体而言,自定义的URLEncode和URLDecode函数在ASP开发中提供了更大的灵活性,允许开发者根据实际情况对数据进行更精细的处理。在处理XML或HTML数据时尤其有用,因为它们可以避免不必要的编码,从而保持数据的完整性...
idea插件toolsMix (记录下班时间、实时中英文翻译、jsonView、urlEncode、urlDecode、timeFormate) 解压toolsMix.zip,toolsMix目录下的zip包为打包好的插件包,可以直接安装
在ASP(Active Server Pages)编程中,UrlEncode和UrlDecode是两个非常关键的函数,它们用于处理Web请求中的URL编码和解码问题。UrlEncode函数用于对URL中的参数进行编码,确保特殊字符被转换成可以通过HTTP协议安全...
除了基本的`UrlEncode`和`UrlDecode`,还有针对特定编码集(如UTF-8、GBK等)的版本,如`UrlEncodeUnicode`和`UrlDecodeUnicode`。这些方法对于处理包含多种语言或特殊字符的文本尤其有用。 在实际应用中,`...