解决重定向后,URL中文乱码问题

目录原因1原因2原因3(问题解决)原因1 服务端获取数据时,获取到的就是乱码(通过debugger排除了) 原因2 前后端字符编码不一致解决思路

目录

    • 原因1
    • 原因2
    • 原因3(问题解决)

原因1

  • 服务端获取数据时,获取到的就是乱码(通过debugger排除了)

原因2

  • 前后端字符编码不一致
  • 解决思路
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
  • 在服务端方法中添加字符编码设置,在客户端页面设置字符编码(未能解决)

原因3(问题解决)

  • 客户端获取中文乱码
  • 解决思路:
  • 服务端方法中添加如下代码:
//nickname是带中文的参数名
nickname = URLEncoder.encode(nickname, "utf-8");
  • 服务端使用ModelAndView进行重定向时,发现URL中文未乱码,但是页面中文乱码。(一开始使用的是String进行重定向)
function getQueryVariable(variable) {
    var query = window.location.search.substring(1);
    var vars = query.split("&");
    for (var i = 0; i < vars.length; i++) {
      var pair = vars[i].split("=");
      //问题出在这里,原来没有使用decodeURIComponent函数
      if(pair[0] == variable){return decodeURIComponent(pair[1]);}
    }
    return(false);
}
  • JavaScript decodeURIComponent() 函数
  • decodeURIComponent(URIstring)
参数描述
URIstring必需。一个字符串,含有编码 URI 组件或其他要解码的文本。

发布者:admin,转转请注明出处:http://www.yc00.com/web/1754941617a5218240.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信