`
neo
  • 浏览: 265736 次
  • 性别: 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(解码)
分享到:
评论

相关推荐

    IE 浏览器在get请求下中文乱码的问题.zip

    本主题聚焦于一个常见问题——“IE浏览器在GET请求下中文乱码的问题”。这涉及到字符编码、HTTP协议以及浏览器解析网页的方式等多个知识点,我们将详细探讨这些问题及其解决方案。 首先,我们需要理解GET请求。在...

    get请求乱码问题 java

    在IT领域,尤其是在Java开发中,GET请求的乱码问题是开发者经常会遇到的一个难题。这个问题主要源于字符编码的不一致,特别是在处理中文或者其他非英文字符时更为显著。下面将详细解析GET请求乱码的原因、解决方案...

    java解决解决get中文乱码问题

    在HTTP协议中,GET请求参数通常被附加在URL后面,浏览器会自动对这些参数进行编码,这个过程称为URL编码或者百分比编码。例如,一个包含中文字符“你好”的参数会被编码为"%E4%BD%A0%E5%A5%BD"。当这些参数被发送到...

    post和get提交乱码处理

    3. **GET请求处理**:GET请求的参数包含在URL中,浏览器会按照URL编码规则对参数进行编码。在Servlet中,我们可以使用`request.getParameter()`来获取参数,该方法默认使用ISO-8859-1编码。因此,我们需要将获取到的...

    解决boa服务器get/post请求中文乱码问题

    本主题聚焦于"boa服务器get/post请求中文乱码问题",并提及了sqlite3数据库处理中文乱码的情况。以下将详细介绍这两个方面的知识点。 1. Boa服务器与HTTP请求中文乱码: Boa服务器是一个轻量级的Web服务器,适用于...

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

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

    SpringMVC解决GET请求时中文乱码的问题.rar

    这个问题主要源于请求参数在URL中编码时使用的是UTF-8以外的字符集,导致服务器接收到的参数解码后出现乱码。本文将深入探讨这个问题,并提供解决方案。 一、问题解析 1. GET请求原理:GET请求的参数通常会附加在...

    Flash中出现中文乱码的解决办法.pdf

    在 Flash 中,loadVariables()、getURL 动作或 LoadVars 对象可以用来加载外部文本文件。如果这些文本文件使用非 Unicode 编码,需要使用 System.useCodepage = true; 脚本来确保 Flash 玩家正确地解释中文字符。 ...

    解决不同浏览器下载时中文名乱码问题

    ### 解决不同浏览器下载时中文名乱码问题 在Web开发过程中,经常遇到的一个问题是当用户尝试下载包含中文字符的文件名时,会出现乱码的情况。这是因为不同的浏览器处理文件名编码的方式有所不同,导致服务器端设置...

    java中文乱码解决之道(8)解决URL中文乱码问题Jav

    在Java编程中,中文乱码问题是一个常见的挑战,特别是在处理URL时。URL编码是导致中文乱码的关键因素,因为URL不支持非ASCII字符。本文将深入探讨如何在Java中有效地解决URL中文乱码问题。 首先,我们需要理解URL...

    过滤器实现get请求乱码问题

    默认情况下,浏览器使用UTF-8编码URL中的非ASCII字符,但在服务器端解码时,如果不正确地设置编码格式,就可能导致乱码。 要解决这个乱码问题,我们可以按照以下步骤创建一个过滤器: 1. 创建Filter类:首先,我们...

    get方式传参中文乱码问题的解决方案

    GET请求中的参数是通过URL直接传递的,当参数包含中文字符时,如果URL编码不正确或者服务器端没有正确地解码这些参数,就会出现乱码问题。主要原因包括: 1. **客户端与服务器端编码不一致**:客户端发送请求时使用...

    JSP中 ajax的get请求的中文乱码问题的解决方法.pdf

    在JSP中,当使用Ajax进行GET请求时,可能会遇到中文乱码的问题。这通常是由于URL编码不匹配或处理不当导致的。以下是一些解决这个问题的关键知识点和步骤: 1. **URL编码问题**: URL编码是一种标准,用于将特殊...

    web浏览器发送请求的过程解析--防止乱码的产生

    在URL中包含非ASCII字符如中文时,浏览器会自动进行URL编码,将中文字符"中文"转换为"%D6%D0%CE%C4"。然而,HTTP协议本身并未规定如何解码这些非ASCII字符,这取决于服务器的配置和预期的编码标准。例如,Google的...

    页面get请求 中文参数方法乱码问题的快速解决方法

    然而,当GET请求的参数包含中文字符时,由于编码格式不一致或者处理不当,可能会出现中文乱码的问题。本篇文章将详细介绍如何快速解决这一问题。 首先,我们需要理解乱码产生的原因。在HTTP请求中,URL(统一资源...

    get、post请求中文乱码处理方式一

    本文将详细阐述GET和POST请求中文乱码的处理方式,以帮助开发者解决这类问题。 首先,我们需要了解为什么会出现中文乱码。在HTTP请求中,数据通常是按照ASCII编码进行传输的,而中文字符通常使用UTF-8或其他多字节...

    GET方法URL中传递中文参数乱码的解决方法

    然而,当我们在GET请求的URL中直接传递包含中文字符的参数时,可能会遇到乱码问题。这是因为不同系统、浏览器和服务器对字符编码的支持不一致,导致在传输过程中中文字符无法正确解析。以下是对这个问题的深入探讨和...

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

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

Global site tag (gtag.js) - Google Analytics