提问人:MatthieuBlm 提问时间:11/6/2023 最后编辑:MatthieuBlm 更新时间:11/6/2023 访问量:39
获取请求参数验证错误原因为 JSON
Get request parameters validation error cause as JSON
问:
我有一个用于验证端点参数的 Spring-Boot rest API。
我正在尝试通过提供更多结构化信息来改进端点的验证消息。jakarta.validations.constraints
我有一个端点,如下所示:
@PostMapping("api/foos")
public Foo createFoo(@Size(min = 4, max = 20) @RequestParam String fooName) {
return this.fooService.create(fooName);
}
如果我使用错误的参数发出请求,例如 ,我会得到:fooName
POST /api/foos?fooName=foo
{
"timestamp": "2023-11-06T14:39:09.686+00:00",
"status": 400,
"error": "Bad Request",
"message": "createFoo.fooName: size must be between 4 and 20",
"path": "/api/foos"
}
是否可以覆盖此行为以在响应中具有更多结构化的详细信息,例如:
{
"timestamp": "2023-11-06T14:39:09.686+00:00",
"status": 400,
"error": "Bad Request",
"cause": [{
"field": "fooName",
"size": {
"min": 4,
"max": 20,
}
}],
"path": "/api/foos"
}
我知道可以通过在类路径中添加一个来覆盖注释默认消息,但该消息仍然是一个字符串,因此在前端更难解析。ValidationMessages.properties
答: 暂无答案
评论