包含分号的URL被截断

时间:2018-12-12 12:43:34

标签: java

我正在Tomcat上运行Java Spring应用程序,该应用程序接受来自Web浏览器的HTTP请求。我的网址请求的格式为http://some_server/search/id/123;456

javascript库函数encodeURIComponent用于在将URL发送到应用程序之前对URL中的任何特殊字符进行编码 例如http://some_server/search/id/123%3B456

但是,对应用程序进行远程调试后发现URL请求在分号处被截断了。即该网址仅包含分号前面的字符,例如:http://some_server/search/id/123

调试beakpoint位于Spring MVC提供HttpServletRequest的控制器的入口点。

非常感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

您应像这样在@RequestMapping中使用模式

@RequestMapping(value = "/search/id/{id:^[0-9;]+$}")
public String test(@PathVariable(value = "id") String id) {}