2017-02-20 6 views
0

Ich möchte Swagger 2.0 mit meinem RESTful-Webdienst Spring Boot verwenden, um Dokumentation zu generieren. Ich habe ein bisschen nach einer Antwort gesucht. Grundsätzlich habe ich ein Spring Boot-Projekt mit einer Reihe von Controllern und möchte die APIs dokumentieren. Ich habe die folgenden Abhängigkeiten in meiner POM-Datei eingerichtet.Swagger-REST-API-Dokumentation mit Spring Boot

<dependency> 
     <groupId>io.springfox</groupId> 
     <artifactId>springfox-swagger-ui</artifactId> 
     <version>2.4.0</version> 
    </dependency> 
    <dependency> 
     <groupId>io.springfox</groupId> 
     <artifactId>springfox-swagger2</artifactId> 
     <version>2.5.0</version> 
    </dependency> 

Dies ist meine Swagger Konfigurationsklasse mit der @Configuration und @ EnableSwagger2:

 @Configuration 
     @EnableSwagger2 
public class SwaggerConfig { 

    @Bean 
    public Docket api(){ 
     return new Docket(DocumentationType.SWAGGER_2) 
      .select() 
      .apis(RequestHandlerSelectors.any()) 
      .paths(PathSelectors.regex("/api/.*")) 
      .build() 
      .apiInfo(apiInfo()); 
    } 

    private ApiInfo apiInfo() { 
     return new ApiInfoBuilder() 
      .title("My application title") 
      .description("This is a test of documenting EST API's") 
      .version("V1.2") 
      .termsOfServiceUrl("http://terms-of-services.url") 
      .license("LICENSE") 
      .licenseUrl("http://url-to-license.com") 
      .build(); 
    } 

} 

Von dem, was ich bei der Lektüre ein paar anderen Antworten hier versammelt habe, dass ich an dieser Stelle sollte in der Lage zu sehe etwas an einer URL wie http://myapp/v2/api-docs oder alternativ http://localhost:8080/myapp/api-docs Ich habe die Annahme gemacht, dass der "myapp" Teil der oben genannten URL auf den Namen der Klasse verweist, in der sich mein Hauptverzeichnis befindet (ist das korrekt)? Auch ich habe dies mit Port 8080 und Port 80 versucht und die Quintessenz ist, dass ich nichts anderes sehe, als Site nicht erreicht werden kann. Ich habe mir die Antworten here und here angesehen, aber ich habe keinen Erfolg. Jede Hilfe würde sehr geschätzt werden, danke im Voraus.

+0

Try this: http: // localhost: 8080/myapp/swagger-ui.html –

Antwort

0

Wie Sie auf der folgenden Dokumentation sehen: https://springfox.github.io/springfox/docs/snapshot/#springfox-swagger-ui

Der Endpunkt ist jetzt auf Prahlerei-ui.html, für Ihren Fall, wird es http://localhost:8080/myapp/swagger-ui.html

+0

Vielen Dank, eine zusätzliche Frage, der "myapp" Teil der URL ist dies der Name der Klasse, in der mein "main" residiert? – TKPhillyBurb

+0

Ich sehe nicht einmal den Port 8080 verwendet, wenn Sie Netstat betrachten. – TKPhillyBurb

+0

http://stackoverflow.com/questions/24452072/how-do-i-choose-the-url-for-my-spring-boot-webapp – fbak