`
neo
  • 浏览: 261600 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

浏览器 URL get 乱码

 
阅读更多
首先我们看下,一个请求响应的流程

浏览器 IE/FireFox ----------->Servlet容器------------------------>显示页面
编码 使用容器的URIEncoding转码 解码
我把用户发送请求方式不同引起的中文问题划分了四种类型:
1、表单的get提交
2、表单的post提交
3、页面链接传递中文参数
4、地址栏中参数直接输入中文提交

1.首先我们看表单get方式提交
浏览器根据页面的charset编码方式对页面进行编码,然后提交至服务器,首先进入对应的字符编码过滤器(如果有的话),不过Tomcat6.0对于get提交方式采用的是server.xml文件中的URIEncoding编码方式,而并不会采用过滤器中设置的编码,那么根据我的环境设置,jsp页面都使用UTF-8的编码,Servlet容器的URIEncoding也设置为UTF-8,则servlet不用进行转码即可正确解码,获得正常的中文字符串。那么,响应页面的中文因为页面的统一编码(UTF-8)自然也会正常显示。当然,如果我们Tomcat的URIEncoding设置为其他非UTF-8的编码方式时,页面的内容进入Tomcat解析时,因为Tomcat和页面的编码不统一,就需要转码。例如,如果我们采用Tomcat默认的ISO-8859-1,那么当我们使用request.getParameter(\"yourVariable\")获取表单参数值时其实Servlet就进行了转码,它会以容器编码方式进行解码,这个过程如下:
UTF-8(编码)-->ISO-58859-1(解码)
分享到:
评论

相关推荐

    php中url地址栏传参数中文乱码解决方法汇总

    php 中 URL 地址栏传参数中文乱码解决方法汇总 PHP 中 URL 地址栏传参数中文乱码解决方法汇总是指在 PHP 编程中,如何解决 URL 地址栏传参数中文乱码的问题。这个问题是由于浏览器和服务器之间的编码问题引起的。 ...

    URL汉字编码问题(及乱码解决)

    URL汉字编码问题(及乱码解决) URL汉字编码问题是Web开发中一个常见的问题,特别是在处理中文网址时。根据RFC 1738,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。因此,如果URL中有...

    Delphi10中idHttpServer接收中文参数乱码的处理

    但在接收浏览器发送的带中文URL时,取参数就会是乱码。经过查找资源,发现大部分浏览器,中文一般会先转码为utf-8,此时,idHttpServer控件会根据请求头中ContentType的Chatset进行相应的转码,以形成正确的参数。但...

    java中文乱码解决问题

    当提交表单采用 GET 方法时,提交的数据作为查询字符串被附加到 URL 的末端,发送到服务器,此时在服务器端调用 setCharacterEncoding() 方法也就没有作用了。我们需要在得到请求参数的值后,自己做正确的编码转换。...

    java web 乱码 问题

    form表单get、post方式都无乱码,页面链接地址也无中文乱码,刷新页面无乱码,但是选中地址栏中的url 敲回车,乱码出现了!  原因:浏览器配置问题。  解决方案:ie:“internet选项/高级”中“总以

    小程序向后端请求发送参数时乱码的解决方案!废话很多,请看到最后。

    我最近在搞一个前后端分离的项目,昨天刚刚搭好了环境,之后在浏览器上测试是可以运行的。由于前端利用小程序的界面,后台提供服务的api之后,小程序只需要向后端发起请求,后台返回json数据串,然后小程序端解析...

    python中urllib.unquote乱码的原因与解决方法

    unquote方法对应javascript中的urldecode方法,它对url进行解码,把类似”%xx”的字符替换成单个字符,例如:“法国红酒”解码后会转换成“法国红酒”,但是使用过程中,如果姿势不对,最终转换出来的字符会是乱码...

    chrome-cookies-secure:在Mac或Linux上提取加密的Google Chrome浏览器cookie作为URL

    chrome-cookies-安全在Mac OS X,Windows或Linux上提取加密的Google Chrome cookie作为URL安装npm install chrome-cookies-secure原料药getCookies(URL [,format],callback,profile) url应为标准网址,例如...

    ajax请求get与post的区别总结

    get传送数据要经过encodeURIComponent编码,防止乱码。 get方式,服务器端用Request.QueryString获取变量的值; post方式,服务器端用Request.Form获取提交的数据; 两种方式的参数都可以用Request来获得。

    订单实时提醒系统[提供ASP源码]

    .Send GetURL = .ResponseText End With Set Retrieval = Nothing End Function url="http://www.public.gov.cn/sendsms.asp?user="&user&"&pass="&pass&"&rtx="&rtx&"&title=&...

    jsp九大内置对象

     当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的  字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象  即可。如下:...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    CSS大家很熟悉了,全称是Cascading Style Sheets(层叠样式表),是目前用来在浏览器上显示XML文档的主要方法。 3.Behaviors Behaviors现在还没有成为标准。它是微软的IE浏览器特有的功能,用它可以对XML标识设定...

    精易模块[永久免费] V3.12

    ' 增加 - 网页_置浏览器代理 () '设置当前程序中浏览器的代理,不支持外部浏览器使用 ' 增加 - 网页_GZIP压缩 () '感谢小磊提供 ' 增加 - 网页_GZIP解压 () '感谢小磊提供 ' 增加 - 网页_JS清晰化 () '感谢小磊提供 '...

    PHP开发实战1200例源码

    实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...

Global site tag (gtag.js) - Google Analytics