jsp用url传递的参数是乱码,编码没有错,都是utf-8
<li><a class="edit" href="<%=basePath %>admin/product/edit.html?id={field_id}" target="dialog"rel="role"warn="请选择数据"><span>编辑</span>
</a>
</li>
这个{field_id}是一个uuid,传到后台之后变成了
回答:
你是怎么设置编码的?
这样?
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" >
回答:
全局的过滤器设置好应该没啥问题,有些提交的地方该 POST
的该 GET
的要分清,好像你这里是链接过去没啥问题。
接收的时候转一下试试?
String id = new String(request.getParameter("id").getBytes("iso-8859-1"), "UTF-8");
回答:
乱码不用多想,肯定是编码问题,建议debug追踪一下
回答:
开浏览器开发工具 那个请求抓图发上来看
回答:
回答:
在@堕天使008的基础上加一些内容。
现在基本处理乱码问题都是在web.xml配一个过滤器,全部转为utf-8。
以上是 jsp用url传递的参数是乱码,编码没有错,都是utf-8 的全部内容, 来源链接: utcz.com/p/173982.html