为什么80%的码农都做不了架构师?>>>
Controller层
@RestController
@Validated
class Controller {
// ...
}
为Controller添加@Validated
表示启用验证。
@GetMapping
public ResponseEntity> query(@RequestHeader("iv-user") String userId,
@Pattern(regexp = "^accessor$", message = "请求参数不合法")
@RequestParam("findBy") String accessor,
@RequestParam("accessorId") long accessorId){
//...
}
为Controller中特定请求添加@Pattern(regexp = "^accessor$", message = "请求参数不合法")
正则表达式校验。
Json响应
{
"timestamp": "2018-07-19T02:08:01.372+0000",
"status": 500,
"error": "Internal Server Error",
"message": "query.accessor: 请求参数不合法",
"path": "/budget/permissions"
}
总结
很方便,还可以自己捕获这个异常的对返回进行自定义处理。
参考:
Spring Boot REST @RequestParam not being Validated