2015-09-17 4 views
3

Я использую Spring Swagger библиотеки v1.0.2Кураж Spring API

Maven:

<dependency> 
    <groupId>com.mangofactory</groupId> 
    <artifactId>swagger-springmvc</artifactId> 
    <version>1.0.2</version> 
</dependency> 

Я могу отсканировать мой REST API, и просмотреть его на Swagger UI. Я даже реализовал OAuth, и он отлично работает.

Однако есть одна функция, которую мне нужно реализовать. Я хочу скрыть некоторые из REST API. Мне нужно сделать это как на уровне класса, так и на уровне метода. Я прочитал об «скрытом» атрибуте в аннотации @Api. Я установил его в true, но я все еще вижу, что мой класс и все его методы отображаются в пользовательском интерфейсе Swagger.

Пример:

@Api( 
     description="This class is not covered by Spring security.", 
     value="/unauthorize", 
     hidden=true) 
@RequestMapping("/unauthorize") 
@Controller 
public class UnauthorizeResource {} 

Может кто-то пожалуйста, скажите мне, как я могу предотвратить класс «UnauthorizeResource» из отображаемого?

ответ

5

Вы можете использовать @ApiIgnore аннотацию:

@ApiIgnore 
@RequestMapping("/unauthorize") 
@Controller 
public class UnauthorizeResource {} 
+1

Спасибо так много! Принимал это как ответ. – Raj

Смежные вопросы