`
starbhhc
  • 浏览: 657890 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

GET乱码以及POST乱码的解决方法

 
阅读更多
一、GET乱码的解决方法

在tomcat的server.xml文件中修下面的代码片段,在最后添加URIEncoding="UTF-8",修改后的结果如下

Xml代码 
<Connector port="8080" protocol="HTTP/1.1"   
               connectionTimeout="20000"   
               redirectPort="8443" URIEncoding="UTF-8" /> 

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />


二、POST乱码解决方法

自定义字符集过滤器,代码如下

Java代码 
package com.filter;  
 
import java.io.IOException;  
 
import javax.servlet.Filter;  
import javax.servlet.FilterChain;  
import javax.servlet.FilterConfig;  
import javax.servlet.ServletException;  
import javax.servlet.ServletRequest;  
import javax.servlet.ServletResponse;  
 
public class CharEncodingFilter implements Filter {  
 
    private String charSet;  
 
    public void init(FilterConfig config) throws ServletException {  
        charSet = config.getInitParameter("encoding");  
        if (charSet == null && charSet.length() < 1) {  
            charSet = "UTF-8";  
        }  
    }  
 
    public void doFilter(ServletRequest request, ServletResponse response,  
            FilterChain filter) throws IOException, ServletException {  
        request.setCharacterEncoding(this.getCharSet());  
        response.setCharacterEncoding(this.getCharSet());  
        filter.doFilter(request, response);  
 
    }  
 
    public void destroy() {  
        this.setCharSet(null);  
    }  
 
    public void setCharSet(String charSet) {  
        this.charSet = charSet;  
    }  
 
    public String getCharSet() {  
        return (this.charSet);  
    }  
 


package com.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class CharEncodingFilter implements Filter {

private String charSet;

public void init(FilterConfig config) throws ServletException {
charSet = config.getInitParameter("encoding");
if (charSet == null && charSet.length() < 1) {
charSet = "UTF-8";
}
}

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filter) throws IOException, ServletException {
request.setCharacterEncoding(this.getCharSet());
response.setCharacterEncoding(this.getCharSet());
filter.doFilter(request, response);

}

public void destroy() {
this.setCharSet(null);
}

public void setCharSet(String charSet) {
this.charSet = charSet;
}

public String getCharSet() {
return (this.charSet);
}

}
web.xml配置

Xml代码 
<filter> 
        <filter-name>CharEncodingFilter</filter-name> 
        <filter-class> 
            com.filter.CharEncodingFilter  
        </filter-class> 
        <init-param> 
            <param-name>encoding</param-name> 
            <param-value>UTF-8</param-value> 
        </init-param> 
    </filter> 
分享到:
评论

相关推荐

    Tomcat中Get和Post出现乱码的解决办法

    在本文中,我们将详细介绍 Tomcat 中 Get 和 Post 方法出现乱码的解决办法。 一、乱码问题的出现 在 JSP 程序中,当我们使用 GET 或 POST 方法提交中文信息时,可能会出现乱码问题。这是因为 Tomcat 对于 GET 和 ...

    解决post get 请求乱码问题

    解决 POST GET 请求乱码问题 在 Web 开发中,POST 和 GET 请求可能会出现乱码问题,导致中文参数无法正确传输和解析。今天,我们将讨论如何解决 POST 和 GET 请求乱码问题。 解决 POST 请求乱码问题 在 Spring ...

    解决了中文乱码的http的get和post请求demo

    本篇将详细讲解如何处理中文乱码问题,特别是在HTTP的GET和POST请求中。参考文档来源于CSDN博主的文章,我们将围绕这个主题进行深入探讨。 首先,我们需要理解中文乱码问题产生的原因。当HTTP请求发送含有中文字符...

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

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

    post和get提交乱码处理

    通过以上方法,我们可以有效地解决POST和GET请求中的乱码问题。确保在客户端、服务器端以及数据存储环节都保持字符编码的一致性,是防止乱码的关键。在实际开发中,一定要养成良好的编码习惯,正确地处理字符集转换...

    Indy10.6和OpenSSL解决D7下GET&POST;乱码下载

    "3,indy10.6D7下Get&Post中文乱码解决.txt"是针对D7环境下Indy10.6 GET和POST请求中文乱码问题的解决方案。这个问题通常由字符编码不一致导致,例如服务器和客户端之间没有统一的编码标准,或者在转换过程中没有...

    java乱码综合解决方法(不区分get和post)

    Java中的乱码问题是一个常见的编程挑战,特别是在处理网络请求(如GET和POST)时。本文将深入探讨如何解决这些问题,并且不局限于特定的请求类型。首先,我们需要理解字符编码的基本概念,然后分析Java中可能出现...

    POST和GET方法乱码解决方案.docx

    ### POST和GET方法乱码解决方案 #### 前言 在Web开发中,中文乱码问题经常出现。这种现象主要是由于客户端(浏览器)与服务器之间的编码格式不一致导致的。通常情况下,浏览器发送数据时使用预设的编码格式,如UTF-...

    URL编码以及GET和POST提交乱码解决方案

    在IT行业中,网络通信是不可或缺的一部分,而URL编码、GET和POST提交以及乱码问题则是开发者经常遇到的技术挑战。本文将深入探讨这些知识点,并提供相应的解决方案。 首先,URL编码是因URL(统一资源定位符)中不能...

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

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

    乱码问题的解决

    在本文中,我们将详细介绍乱码问题的原因、类型和解决方法。 一、编码不一致的原因 编码不一致是乱码问题的主要原因。编码不一致可能出现在多个方面: * 页面编码:jsp 默认 iso8859-1 * 服务器编码:tomcat 默认...

    JSP-GET-POST传递的乱码问题

    然而,在处理中文参数时,尤其是通过GET和POST方法传递时,经常会出现乱码问题。这通常是由于字符编码不一致或者处理不当导致的。以下是对这一问题的详细解析: 首先,我们需要理解字符编码的基本概念。在Web中,...

    中文乱码过滤器(包括GET和POST)

    中文乱码过滤器是一种专门用于解决这种问题的工具,它能够有效地处理GET和POST请求中的中文乱码问题,确保数据的正确显示和传输。本文将深入探讨中文乱码的产生原因,介绍中文乱码过滤器的工作原理,以及如何在实际...

    FORM表单中文乱码问题分析与解决

    解决方法:解决中文乱码问题的方法有两种,一种是使用POST方式,另一种是使用GET方式。 1、POST方式:在POST方式中,我们可以使用request.setCharacterEncoding("UTF-8")来指定解码方式为UTF-8。这将使服务器使用...

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

    总结,解决Spring MVC中GET请求中文乱码问题的关键在于确保从客户端到服务器再到客户端的整个链路中,字符编码的一致性和正确设置。通过调整配置、使用注解或自定义拦截器,可以有效地解决这个问题,确保中文数据的...

    ajax POST 与GET提交的区别

    - **POST**: 同样存在乱码问题,可以通过设置Content-Type和服务器端编码来解决。 7. **实现细节**: - **GET**: 参数直接拼接在URL后面,如 `http://example.com?name=value`。 - **POST**: 需要通过设置Content...

    过滤器实现get请求和POST请求的中文乱码问题

    使用过滤器实现GET请求和POST请求的中文乱码问题,只需在自己的Web应用中的web.xml中配置该filter即可使用。

    get与post乱码过滤器.zip

    在这个"get与post乱码过滤器.zip"压缩包中,我们可以预见到它包含的是Java源代码,专门用于解决HTTP请求过程中的编码乱码问题。 首先,让我们来理解一下"GET"和"POST"的区别。"GET"请求通常用于获取资源,其参数...

    jsp乱码解决方案 本方案解决了jsp常见的乱码问题

    针对上述乱码产生的原因,我们可以采取以下几种方法来解决乱码问题: 1. **统一编码格式**: - **设置JSP页面编码**:在JSP页面头部添加`; charset=UTF-8" pageEncoding="UTF-8"%&gt;`,确保页面使用统一的编码格式。...

Global site tag (gtag.js) - Google Analytics