小bug_重定向URL中文乱码问题

71 阅读1分钟

小bug_重定向URL中文乱码问题

        今天在使用重定向的时候,URL中的传参还有中文,导致出现了中文乱码,最后发现,是因为在重定向使用的是response,response 缓冲区的默认编码是 iso8859-1,此码表中没有中文。所以我们需要借助URLEncoder这个工具类的encode()方法,把会乱码的字符串指定目标编码即可。PS:还有很多别的办法,我只用了这一种

        **语法:**URLEncoder.encoder(需要指定编码的字符串,指定的编码)

举例:

不做处理的Controller:

@RequestMapping("/test")
public String test(){
    return "redirect:/encode?test=中文";
}

重定向url: 出现了中文乱码

/encode?test=?

做了处理的Controller:

@RequestMapping("/test")
public String test(){
    return "redirect:/encode?test="+URLEncoder.encode("中文","utf-8");
}

重定向url:没有出现中文乱码

/encode?test=中文

转自CSDN

原博客地址

https://blog.csdn.net/m0_51512780/article/details/124169465