我一直在Spring-boot(4.3.3.RELEASE)应用程序中使用通用映射来查询参数,该应用程序已经启用并占用了一段时间的流量。此应用程序有数十个不同的端点,最近我发现由于格式不正确的查询参数,许多请求都会导致错误。
我一直看到大量的请求像http://web.com/url/path?param1=1?param2=2
一样通过。不幸的是,我无法控制或不知道为什么显示这些URL,并且它们都导致使用它们的用户出现错误页面。
是否可以自定义spring以使用“&”和“?”解析查询参数的映射?作为分隔符?
我怀疑可以使用自定义拦截器支持此功能,以检查是否修改了传入的URL,但是我想知道是否有更简单的解决方案。
这是一个端点的示例
@RequestMapping(value = "/url/path", method = {GET, POST})
public ResponseEntity<Void> handleRequest(
@RequestHeader HttpHeaders requestHeaders,
@RequestParam MultiValueMap<String, String> requestParams) throws Exception
{
....
}