二、前端向后台发起请求时,出现的参数乱码问题解决方案

(一)问题介绍
  前端在向后台发起请求时,可能会向后台传递参数。传递参数主要有两种方式:POSTGET,若我们不加以配置,那么后台接到的参数可能会有乱码问题。

(二)POST乱码
  对于POST方式提交的参数若出现乱码,解决方案如下:

<!-- 解决post乱码问题 -->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <!-- 设置编码参是UTF8 -->
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

(二)GET乱码
  对于GET方式提交的参数若出现乱码,解决方案主要有两种,
方式一:修改Tomcat配置文件
  修改tomcat配置文件添加编码与工程编码一致

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

方式二:
  对参数进行重新编码,因为ISO8859-1tomcat默认编码,需要将tomcat编码后的内容按utf-8编码

String userName = new String(request.getParamter("userName").getBytes("ISO8859-1"),"utf-8")

猜你喜欢

转载自blog.csdn.net/panchang199266/article/details/81951268
今日推荐