У меня есть приложение springboot и угловой интерфейс.Я использую Swagger и совершаю вызовы API из Swagger-UI, а также.Эти API представлены как @RestController, поэтому я могу также вызывать их из Angular.Прямо сейчас все мои проверки формы происходят на угловом интерфейсе и не проверяются на уровне API.Мое намерение состоит в том, чтобы разместить проверки API, но проверки будут происходить дважды, если действие выполняется с углового интерфейса (скажем, сохранение формы), сначала из пользовательского интерфейса, а затем из API.Я делаю это так, чтобы API проверял вызовы, сделанные из swagger-ui.Есть ли способ отличить, если звонок сделан от углового интерфейса или от Swagger-UI?Таким образом, я бы пропустил валидацию, если, скажем, данные формы были сохранены из внешнего интерфейса, но все же выполняют проверку на чванливые вызовы, сохраняют ее в чистоте и не изменяют никакой реализации как таковой.Сваггер предоставляет API?
Пример кода
@RestController
@Api(tags = "My api")
@RequestMapping(path = "v1/{apiKey}/myKey")
public class TestController implements TestApi {
@Override
public ResponseEntity<GenericResponse> saveAction(
@ApiParam(value = "Authorization", required = true)
@RequestHeader(value = "Authorization", required = true) String authorization,
@RequestBody SomeDTO someDto, @PathVariable String apiKey,
@PathVariable String someId, HttpServletRequest request){
// can I perform some sort of check here
if(isFromSwagger()){
performValidation(someDto);
}
GenericResponse responseDTO = new GenericResponse();
return new ResponseEntity<>(responseDTO, responseDTO.getHttpStatusCode());
}