У меня есть приложение Spring, где я использовал два остальных интерфейса для использования.
Один для внутренних разработчиков, другой для клиентов.
Swagger генерирует хорошую документацию, доступную по / swagger-ui.html .
Под этим URL отображается документация как для внутренних, так и для внешних пользователей.
Вот моя настройка кода:
import org.springframework.boot.info.BuildProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class Swagger2UiConfiguration extends WebMvcConfigurerAdapter {
@Bean(name="restInternalSwaggerApi")
public Docket internalApi(BuildProperties build) {
final Docket docket = new Docket(DocumentationType.SWAGGER_2)
.groupName( "internal" )
.select()
.apis( RequestHandlerSelectors.basePackage("com.xyz.web.internal") )
.build();
return docket;
}
@Bean(name="restPublicSwaggerApi")
public Docket publicApi(BuildProperties build) {
final Docket docket = new Docket(DocumentationType.SWAGGER_2)
.groupName( "public" )
.select()
.apis( RequestHandlerSelectors.basePackage("com.xyz.web.public") )
.build();
return docket;
}
}
Теперь я хочу отделить эти документированные документы. Так что наши внутренние разработчики получают к нему доступ
/ document / private / swagger-ui.html и
/ документы / государственные / апи-v1.html
Оба не видят друг друга.
Как это сделать?
Я нашел здесь несколько подсказок, но они действительно не были конструктивными для меня:
http://sp ingfox.github.io/springfox/docs/current/#q13 и связанные ресурсы
Настройка конечных точек доков с помощью Springfox Swagger
swagger несколько версий в пути
https://github.com/springfox/springfox/issues/963
https://github.com/springfox/springfox/issues/1263#issuecomment-210839308
Если бы кто-то дал мне надлежащую документацию, я тоже был бы счастлив.
Дайте мне знать, если вопрос трудно понять и как его улучшить.
для информации о версии на Java Maven:
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
Другими словами:
Я хочу, чтобы различные API, доступные DropDown-Box, вызывались по разным URL:
Мне нужно это, чтобы я мог дать клиенту другой URL-адрес с другим API, чем для предоставления другого URL-адреса моим коллегам-разработчикам.