重定向无法传递中文参数的问题
哇,这个BUG找了我半天,也不报错,中文参数就是传不过去,代码如下:
return “redirect:/login?msg="+"用户名或密码有误!";
①方案一:
这里的中文被接收的时候总是为空,改成下面这样可解决问题:
return new ModelAndView("redirect:login").addObject("msg", "用户名或密码有误!");
②方案二:
二〇一八年九月二十九日 08:57:07:
自己给自己挖了个坑,第一种方案解决的话会导致Session里面的内容被清空,后面的代码又出了BUG,回头再仔细一看,原来是编码格式问题,于是有了下面的解决方法(将要发送的字符串转换为iso-8859-1格式的即可):
String message = "用户名或密码有误!"; message = new String(message.getBytes("utf-8"),"iso-8859-1"); return "redirect:login?msg="+message;