这个{field_id}是一个uuid,传到后台之后变成了
在@堕天使008的基础上加一些内容。
现在基本处理乱码问题都是在web.xml配一个过滤器,全部转为utf-8。
开浏览器开发工具 那个请求抓图发上来看
乱码不用多想,肯定是编码问题,建议debug追踪一下
全局的过滤器设置好应该没啥问题,有些提交的地方该 POST
的该 GET
的要分清,好像你这里是链接过去没啥问题。
接收的时候转一下试试?
String id = new String(request.getParameter("id").getBytes("iso-8859-1"), "UTF-8");
你是怎么设置编码的?
这样?
request.setcharacterencoding("UTF-8");
这个只能为POST请求设置编码,GET请求不会受影响的。
想处理get请求,
要么请求里直接使用URL编码
<%=basePath %>admin/product/edit.html?id=<%=java.net.URLDecoder.decode(field_id,"utf-8")%>
要么在接收到请求后处理
String str = new String(param.getBytes("iso-8859-1"),"UTF-8")
当然,还有一个多数人不推荐的方法,直接改服务器的默认编码
<!-- tomcat server.xml --> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" >