Bag*_*rma 3 spring spring-boot
我创建了一个带有更新 (PUT) 请求的控制器,并在 id 字段上应用了正则表达式,如下所示,但该模式未执行并返回 SUCCESS 而不是 BAD_REQUEST。
@PutMapping("users/{id}")
public Mono<ResponseEntity<UsersApiDTO>> update(@PathVariable @Pattern(regexp = "^[A-Za-z]{1,20}$") String id, @RequestBody @Valid UsersApiDTO usersApiDTO) {
// return response
}
Run Code Online (Sandbox Code Playgroud)
当我传递错误的“id”路径字段值“T001223242345”时,它正在工作。它应该给我 BAD_REQUEST,因为它适用于请求正文,就像我为正文参数传递任何无效值一样,它会给出 BAD_REQUEST。
我浏览了很多链接和博客,但还没有运气。
您需要将@Validated 注释添加到您的RestController路径变量中才能得到验证:
@Validated
@RestController
public class YourController {
[...]
Run Code Online (Sandbox Code Playgroud)
我还建议查看Validating RequestParams and PathVariables in Spring。
| 归档时间: |
|
| 查看次数: |
3125 次 |
| 最近记录: |