失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 前端请求参数中文乱码问题

前端请求参数中文乱码问题

时间:2023-05-05 08:28:50

相关推荐

前端请求参数中文乱码问题

1、以post方式提交

以post方式提交的请求参数中文乱码问题可以通过后端的编码过滤器解决。

可以直接使用springMVC中的编码过滤器,只需在web.xml中添加过滤器的配置即可。

<filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

也可以自己写一个编码过滤器:

package filter;import javax.servlet.*;import javax.servlet.annotation.WebFilter;import java.io.IOException;@WebFilter(filterName = "EncodeFilter",urlPatterns = "/*")public class EncodeFilter implements Filter {public void destroy() {}public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {req.setCharacterEncoding("utf-8");chain.doFilter(req, resp);}public void init(FilterConfig config) throws ServletException {}}

2、以get方式提交

在后端接收请求后,使用URLEncoder.encode()方法将请求参数转码成“UTF-8”,同时Tomcat服务器的编码格式也要设置为“UTF-8”。

request.setAttribute("keyword", URLEncoder.encode(keyword,"utf-8"));

Tomcat 服务器编码格式设置,在tomcat的conf目录下server.xml文件中

如果觉得《前端请求参数中文乱码问题》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。