encodeuri转码和解码(为什么要两次调用encodeURI来解决乱码问题)

:暂无数据 2026-09-19 05:10:01 :1

encodeuri转码和解码(为什么要两次调用encodeURI来解决乱码问题)

本篇文章给大家谈谈encodeuri转码和解码,以及为什么要两次调用encodeURI来解决乱码问题对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录

为什么要两次调用encodeURI来解决乱码问题

.encodeURL函数主要是来对URI来做转码,它默认是采用的UTF-8的编码.
. UTF-8编码的格式:一个汉字来三个字节构成,每一个字节会转换成16进制的编码,同时添加上%号.
假设页面端输入的中文是一个“中”,按照下面步骤进行解码
1.第一次encodeURI,按照utf-8方式获取字节数组变成 此时已经没有了多字节字符,全部是单字节字符。
2、第二次encodeURI,进行编码,会把%看成一个转义字符,并不编码%以后字符,会把%编码成%25.把数组最后变成发往服务器端,
当应用服务器调用getParameter方法,getParameter方法会去向应用服务器请求参数
应用服务器最初获得的就是发送来的,因为都会把%25解析成%.并把这个值返回给getParameter方法
3\、再用UTF-8解码一次,就得到"中"了。
想想看,如果不编码两次,当服务器自动解码的时候,假如是按照ISO-8859去解码UTF-8编码的东西,就是会出现乱码。
JS:
view plain copy
document.authorityForm.action = basePath3+"User_viewUser.do?id="+id+"&roleName="+encodeURI(encodeURI(roleName))+"&roleType="+roleType;
Java后台:

view plain copy
roleName = java.net.URLDecoder.decode(getRequest().getParameter("roleName"),"UTF-8");

java decodeuri

java decodeuri是什么,让我们一起了解一下。

decodeURI() 是JavaScript的内置函数,用于对encodeURI()函数编码过的URI进行解码,URI是用来标识互联网上的资源和怎样访问这些资源的传输协议的字符串,decodeURI函数操作的是完整的URI。

在JavaScript中,encodeURI和decodeURI 主要用于URL(网址)的编码、解码,是JavaScript的自身函数,采用UTF-8编码格式对指定的字符串进行编码或解码。所以我们要先了解这两个函数的含义是什么?

1、编码函数 encodeURI():将非字母、数字 字符转换成ASCII码,以16进制表示。
2、译码函数 decodeURI():将被encodeURI()编码过的 ASCII码转换成对应的字符。
实战操作:地址解码decodeURI。

//获取完整的 URL var url = window.location.href; //从问号 (?) 开始的 URL(查询部分) var url = window.location.search; //当前 URL 的端口号 var url = window.location.port; //decodeURI()可对 encodeURI()编码过的 URI 进行解码。 //url =decodeURI(decodeURI(location.search));  url =decodeURI(location.search);  // decodeURIComponent()可对 encodeURIComponent()编码的 URI 进行解码。 //可以编码和解码URI特殊字符(如#,/,¥等)
拓展一下:另外encodeURIComponent和decodeURIComponent也是主要用于URL(网址)的编码、解码,是JavaScript的自身函数,采用UTF-8编码格式对指定的字符串进行编码或解码。
编码函数 encodeURIComponent():将非字母、数字 字符转换成ASCII码,以16进制表示。
译码函数 decodeURIComponent():将被encodeURIComponent()编码过的 ASCII码转换成对应的字符。

encodeURIComponent和encodeURI的区别

相同点:   1、encodeURIComponent()和enCodeURI()方法都可以对URI进行编码,以便发送给浏览器,因为有效URI不能包含某些字符,例如空格等。通过这两个方法对URI进行编码,它们用特殊的UTF-8编码替换所有无效的字符,从而能够让浏览器识别

不同点:

1、encodeURI()主要用于整个URI,它不会对本身属于URI的特殊字符进行编码例如:

2.encodeURIComponent()可用于编码URI中的参数,encodeURIComponent方法不会对下列字符编码:

3. encodeURIComponent解码的范围更广,encodeURI主要是对空格进行编码

4.encodeURI通过decodeURI进行解码,encodeURLComponent通过decodeURIComponent进行解码

如果你还想了解更多这方面的信息,记得收藏关注本站。

encodeuri转码和解码(为什么要两次调用encodeURI来解决乱码问题)

本文编辑:admin

更多文章:


withdrawal(withdrawal是什么意思)

withdrawal(withdrawal是什么意思)

今天给各位分享withdrawal是什么意思的知识,其中也会对withdrawal是什么意思进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 07:00

根据流程图怎么编写程序(用c语言根据流程图写程序)

根据流程图怎么编写程序(用c语言根据流程图写程序)

大家好,今天小编来为大家解答以下的问题,关于根据流程图怎么编写程序,用c语言根据流程图写程序这个很多人还不知道,现在让我们一起来看看吧!

2026年10月11日 06:00

在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)

在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)

大家好,关于在from子句中可以出现很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何在from 子句中嵌套查询下面的语句在access中出错!的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望

2026年10月11日 05:20

countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)

countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)

其实countif函数统计个数怎么用的问题并不复杂,但是又很多的朋友都不太了解countif函数怎么用 详解Excel中countif函数的使用方法,因此呢,今天小编就来为大家分享countif函数统计个数怎么用的一些知识,希望可以帮助到大

2026年10月11日 03:30

正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)

正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)

本篇文章给大家谈谈正则匹配数字之前的字符,以及正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问

2026年10月11日 03:00

register语言学(register语言学)

register语言学(register语言学)

“register语言学”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看register语言学(register语言学)!

2026年10月11日 01:40

系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)

系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)

“系统架构设计师可以直接考吗”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)!

2026年10月11日 01:00

orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)

orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)

大家好,如果您还对orlnsertbootmediinselected不太了解,没有关系,今天就由本站为大家分享orlnsertbootmediinselected的知识,包括我电脑开机显示这个是什么意思or insert boot med

2026年10月10日 23:00

display的用法(display是什么意思 详解display的含义和用法)

display的用法(display是什么意思 详解display的含义和用法)

大家好,如果您还对display的用法不太了解,没有关系,今天就由本站为大家分享display的用法的知识,包括display是什么意思 详解display的含义和用法的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月10日 22:00

html全部居中代码(怎么让网页居中显示,html如何让网页居中)

html全部居中代码(怎么让网页居中显示,html如何让网页居中)

大家好,今天小编来为大家解答以下的问题,关于html全部居中代码,怎么让网页居中显示,html如何让网页居中这个很多人还不知道,现在让我们一起来看看吧!

2026年10月10日 21:10

最近更新

withdrawal(withdrawal是什么意思)
2026-10-11 07:00:01 浏览:0
热门文章

标签列表