我在做fastdfs下载的时候用到下载链接重定向,为了让文件原名称显示我带了参数。
本以为 return “redirect:”+path+"?attname="+upload.getName();
这样就完结了
结果只要带中文的名字的全都乱码
一步一步跟踪可发现在接收的request中,该值被转义为类似”%85%45%151”形式的字符,然后接收url值时未将汉字字符转义回来。给出如下解决方法:
return “redirect:”+path+"?attname="+URLEncoder.encode(upload.getName(),“UTF-8”);