做项目的时候,遇到一个小的问题.一个location.href="请求的url"在其它浏览器上是可以正常请求的.但是在ie浏览器上确出现奇怪的http请求400错误,我们先来对于http400状态的描述:当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误,自己的本地,肯定没问题.那就是请求错误了.几经尝试发现是参数带中文的会出现此种情况,没带中文的没有问题.所以在网上找了一些资料,有很多方法.例如把get请求换成post请求,在web.xml中拦截设置编码等等.这些方法是可以的.还有没有其它方法.答案是有的.
解决方法:
1.js编码encodeURI(encodeURI(URL)),编码两次
2.服务器端解码 URLDecoder.decode(request.getParameter("para"),"UTF-8")