【发布时间】:2021-03-02 12:16:19
【问题描述】:
我有一个端点:
@GetMapping("/v2/tw/{id}")
public TwDto getTw(Authentication auth, @PathVariable Long id) {
}
当我想用错误的参数类型/v2/tw/variableNoNumber 使用 Postman 获取数据时,我想在服务中有一些日志,我想得到一些验证错误。该怎么做?
我应该添加例如。 @NumberFormat?它不起作用。
我使用@ControllerAdvice,我的项目已经很老了,一切都得到了正确的验证,但这种情况对我来说很奇怪......
【问题讨论】:
-
也许您应该将
id参数作为一个对象,然后在您的代码检查验证中。 -
@navand hmmm 也许这就是解决方案!然后我可以抛出任何将在 ControllerAdvice 中捕获的 Excption
-
但是我不记得如果我使用 Object 参数类型而不是 Long/Integer...也许有更好的解决方案?
-
时间已经过去了,也许最近发生了一些变化,但是 AFAIK 你无法验证类型。 stackoverflow.com/questions/44072595/…
标签: java spring-boot