@RequestMapping("/testRequestBody")
public String testRequestBody(@RequestBody String body, HttpServletRequest request) throws UnsupportedEncodingException {
body = URLDecoder.decode(body, "UTF-8");
System.out.println(body);
return "success";
}
如果不加body = URLDecoder.decode(body, "UTF-8")的话, 显示出来是username=%E6%80%BB&age=22
在web.xml也设置了编码的filter,
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>