Как вывести ошибку, если в запросе JSON указаны дополнительные параметры?Например, «xxx» не является допустимым параметром или в объекте @RequestBody
.
$ curl -X POST -H "Тип содержимого: application / json" -H "Авторизация: Носитель$ TOKEN "-d '{" apiKey ":"' $ APIKEY '"," email ":" name@example.com ", " xxx ":" yyy "}' localhost: 8080 / api/ v2 / stats
Я пытался добавить @Validated
к интерфейсу, но это не помогло.
@RequestMapping(value = "/api/v2/stats", method = RequestMethod.POST, produces = "application/json")
public ResponseEntity<DataResponse> stats(Principal principal, @Validated @RequestBody ApiParams apiParams) throws ApiException;
Я хотел бы включить «строгий» режим, чтобычто это даст ошибку, если в запросе существуют дополнительные, ложные параметры.Я не мог найти способ сделать это.Я нашел способы убедиться, что действительные параметры существуют, но нет способа убедиться, что нет дополнительных параметров.
public class ApiParams extends Keyable {
@ApiModelProperty(notes = "email of user", required = true)
String email;
public abstract class Keyable {
@ApiModelProperty(notes = "API key", required = true)
@NotNull
String apiKey;
Spring Boot 1.5.20