Spring MVC @PathVariable被截断了我有一个控制器,提供对信息的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吗?
3 回答
幕布斯6054654
TA贡献1876条经验 获得超7个赞
这可能与SPR-6164密切相关。简而言之,该框架尝试将一些智能应用于URI解释,删除它认为的文件扩展名。这将有转向的效果blah2010.08.19-02:25:47
为blah2010.08
,因为它认为.19-02:25:47
是一个文件扩展名。
如链接问题中所述,您可以通过DefaultAnnotationHandlerMapping
在应用程序上下文中声明自己的bean并将其useDefaultSuffixPattern
属性设置为来禁用此行为false
。这将覆盖默认行为,并停止骚扰您的数据。
添加回答
举报
0/150
提交
取消