Мне нужно интегрировать документы spring rest в устаревший проект, если они используют набор пользовательских аннотаций (например, роли пользователей). Есть ли способ в документах spring rest документировать эту аннотацию?
Документировать пользовательскую аннотацию в документах spring rest
comment
Не могли бы вы немного рассказать о том, что делает аннотация? REST Docs работает на уровне HTTP-запросов и ответов. Документирование аннотации будет зависеть от ее влияния на эти запросы и ответы.
- person Andy Wilkinson   schedule 23.07.2020
comment
я знаю, как это работает, и я не согласен с подходом, выбранным моей компанией. По сути, они хотят задокументировать пользовательскую аннотацию, аналогичную @PreAuthorize одной из Spring Security. Существует аннотация, определяющая роль, которую пользователь должен иметь для доступа к определенной конечной точке. Есть ли способ документировать такие вещи?
- person Luca   schedule 24.07.2020
Ответы (1)
Spring REST Docs работает на уровне HTTP-запросов и ответов. По дизайну он ничего не знает об аннотациях или о том, как обрабатываются эти запросы и создаются ответы. Это гарантирует, что то, что вы документируете, находится на том же уровне, что и клиент, взаимодействующий с вашей службой через HTTP.
Если вы хотите включить информацию о @PreAuthorize
или аналогичную ей аннотацию, вам придется написать что-то для этого самостоятельно. Если вы хотите вписаться в REST Docs, вы можете реализовать пользовательский Snippet
, настроенный с помощью класса или метода, из которого он извлекает аннотацию с помощью отражения и создает на ее основе некоторую документацию.
person
Andy Wilkinson
schedule
24.07.2020
Вот как я это реализовал. Но на данный момент мне нужно настроить свой тест, чтобы узнать класс ведьм и метод, который я тестирую. Знаете ли вы, есть ли способ извлечь это в классе Snippet?
- person Luca; 27.07.2020