您的位置:

了解Swagger默认地址

Swagger 是一种非常流行的API文档工具,提供了许多有用的功能,其中包括自动生成API文档、API测试、在线接口调试等。通过使用Swagger,开发人员可以更加方便地了解和使用API。默认情况下,Swagger提供了一个默认地址,也就是 '/swagger-ui.html',本文将从多个方面详细介绍这个默认地址。

一、默认地址的作用

Swagger默认地址 '/swagger-ui.html' 的主要作用是提供API文档和API测试工具,以帮助开发人员更快地理解和使用API。在默认地址上,开发人员可以看到API的详细信息、请求和响应的示例、请求参数等重要信息。此外,在默认地址上,开发人员可以进行在线的API测试和接口调试,并获取实时的响应结果。因此,Swagger默认地址无疑是开发人员必备的工具之一。

二、如何访问默认地址

要访问Swagger默认地址 '/swagger-ui.html',只需要在API服务的URL后面添加 '/swagger-ui.html'即可,例如:

http://localhost:8080/swagger-ui.html

其中,'localhost:8080' 是API服务的URL地址,'/swagger-ui.html' 是Swagger默认地址。需要注意的是,Swagger默认地址只有在API服务部署成功后才能访问。

三、美化默认地址

默认情况下,Swagger默认地址的界面风格不够美观,开发人员可以通过自定义CSS和JavaScript文件来美化Swagger默认地址。下面是一个简单的示例:

首先,在API服务的静态资源目录下新建 'swagger' 文件夹,用于存放自定义的CSS和JavaScript文件。然后,将以下代码加入到API服务的Spring配置文件中:

@Configuration
@EnableSwagger2
@Import(SwaggerUiConfiguration.class)
public class SwaggerConfig {
   @Bean
   public Docket createRestApi() {
       return new Docket(DocumentationType.SWAGGER_2)
               .apiInfo(apiInfo())
               .select()
               .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
               .paths(PathSelectors.any())
               .build();
   }
   private ApiInfo apiInfo() {
       return new ApiInfoBuilder()
               .title("Spring Boot APIs")
               .description("Spring Boot APIs")
               .termsOfServiceUrl("")
               .version("1.0")
               .build();
   }
   @Autowired
   private SwaggerUiConfiguration swaggerUiConfig;
   @PostConstruct
   public void init() {
       swaggerUiConfig.setValidatorUrl(null);
   }
}

在上述代码中,'@Import(SwaggerUiConfiguration.class)' 用于引入SwaggerUI的配置信息。可以通过修改'ApiInfo'类的属性,来设置SwaggerUI的标题、描述信息等。最后,通过 'PostConstruct'注解,来禁用ValidatorUrl,可以有效的解决SwaggerUI的安全警告。通过这些设置,可以使Swagger默认地址更加美观和用户友好。

四、自定义默认地址

除了使用Swagger默认地址之外,开发人员还可以根据需要自定义Swagger的地址。要自定义Swagger地址,只需将以下代码加入到API服务的Spring配置文件中:

@Configuration
@EnableSwagger2
@Import(SwaggerUiConfiguration.class)
public class SwaggerConfig {
   @Bean
   public Docket createRestApi() {
       return new Docket(DocumentationType.SWAGGER_2)
               .apiInfo(apiInfo())
               .select()
               .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
               .paths(PathSelectors.any())
               .build();
   }
   private ApiInfo apiInfo() {
       return new ApiInfoBuilder()
               .title("Spring Boot APIs")
               .description("Spring Boot APIs")
               .termsOfServiceUrl("")
               .version("1.0")
               .build();
   }
   @Autowired
   private SwaggerUiConfiguration swaggerUiConfig;
   @PostConstruct
   public void init() {
       swaggerUiConfig.setValidatorUrl(null);
   }
   @Bean
   public Docket testApi() {
       return new Docket(DocumentationType.SWAGGER_2).groupName("test");
   }

   @Bean
   public Docket userApi() {
       return new Docket(DocumentationType.SWAGGER_2)
               .groupName("user")
               .apiInfo(apiInfo())
               .select()
               .apis(RequestHandlerSelectors.basePackage("com.example.demo.user.controller"))
               .paths(PathSelectors.any())
               .build();
   }
}

在上述代码中,'createRestApi' 方法用于设置默认的Swagger文档详情信息,'testApi' 和 'userApi' 方法则用于自定义Swagger文档详情信息。其中,groupName用于设置分组名称,方便用户查看和使用。通过以上设置,可以方便自如地自定义Swagger默认地址。

五、总结

Swagger默认地址是非常有用的API文档工具,通过本文的详细介绍,我们可以更加深入地了解Swagger默认地址的作用和使用方法。在实际开发中,我们可以通过美化默认界面、自定义地址等方式来提高Swagger的使用效率和便捷性。希望本文可以为大家在开发过程中提供帮助。