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追踪一下

回答:

开浏览器开发工具 那个请求抓图发上来看

回答:

配置tomcat
http://zhidao.baidu.com/link?url=oW_9Vnxklnb6hUbMm5zdRVm_bINsc5YPxGrxYWdJBqqiWXIuvRy4C8z1Y7nuNJ5rqxzqPhQ6MG-Z0EPjDngyS_

回答:

在@堕天使008的基础上加一些内容。
现在基本处理乱码问题都是在web.xml配一个过滤器,全部转为utf-8。

以上是 jsp用url传递的参数是乱码,编码没有错,都是utf-8 的全部内容, 来源链接: utcz.com/p/173982.html

回到顶部