У меня есть контроллер отображения Sprint, как показано ниже.
@GetMapping("/hello/{name}/age")
private String hello(@PathVariable(value = "name", required = true) String name){
//...
}
@GetMapping("/hello/{name}")
private String hello(@PathVariable(value = "name", required = true) String name){
//...
}
@GetMapping("/name")
private ResponseEntity<?> queryPerson(@RequestParam(value = "query", required = false) String query) {
// ...
}
Но клиент может обработать следующий случай
, когда клиент отправляет / hello / john / age , я должен вернуть pojo, связанный с возрастом, но когда клиент звонит / hello // age Я должен вернуть 400 с неверным именем пользователя в качестве ошибки.
Так как я мой код, у меня уже есть другое отображение hello / {name}, поэтому он вызывает это API и пытается найти username = 'age' и возвращает 404.
Здесь я полагаю, что 400, когда пользователь звонит / hello // age, так как это сделать весной?