spring mvc 什么时候解码查询字符串?
When does spring mvc decode the query string?
我有一个由 Jetty 启动的 Spring MVC 应用程序,并且有这样一个控制器:
@RequestMapping(value = "/users/byIds", method = RequestMethod.GET)
public ResponseEntity<String> findUsersWithIds(@RequestParam("ids") String idsJson) throws IOException {
System.out.println(idsJson);
}
当我在浏览器中发出 url 时:
http://localhost:8080/users/byIds?ids={%22userIds%22:[%22123456%22]}
我发现方法中的idsJson
已经解码:
{"uerIds":["123456"]}
只是想知道查询字符串何时解码?这是由 Spring 还是 Jetty 完成的?在某些过滤器中?
servlet 容器(此处为 Jetty)执行此操作。
当您调用 request.getParameter("x")
时(Spring MVC 必然会这样做),它已经为您解码了。
我有一个由 Jetty 启动的 Spring MVC 应用程序,并且有这样一个控制器:
@RequestMapping(value = "/users/byIds", method = RequestMethod.GET)
public ResponseEntity<String> findUsersWithIds(@RequestParam("ids") String idsJson) throws IOException {
System.out.println(idsJson);
}
当我在浏览器中发出 url 时:
http://localhost:8080/users/byIds?ids={%22userIds%22:[%22123456%22]}
我发现方法中的idsJson
已经解码:
{"uerIds":["123456"]}
只是想知道查询字符串何时解码?这是由 Spring 还是 Jetty 完成的?在某些过滤器中?
servlet 容器(此处为 Jetty)执行此操作。
当您调用 request.getParameter("x")
时(Spring MVC 必然会这样做),它已经为您解码了。