一尘不染

Spring MVC @PathVariable被截断

java spring

我有一个控制器,可提供对信息的RESTful访问:

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName}")
public ModelAndView getBlah(@PathVariable String blahName, HttpServletRequest request,
                            HttpServletResponse response) {

我遇到的问题是,如果我使用带有特殊字符的路径变量访问服务器,则会被截断。例如: http:// localhost:8080 / blah-server / blah / get / blah2010.08.19-02:25:47

参数blahName将为blah2010.08

但是,对request.getRequestURI()的调用包含所有传入的信息。

任何想法如何防止Spring截断@PathVariable?


阅读 431

收藏
2020-03-09

共1个答案

一尘不染

尝试对@RequestMapping参数使用正则表达式:

RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName:.+}")
2020-03-09