前言:上一篇博文记录了Swagger的基本使用(地址),有两个问题须要处理:html
1). 访问swagger地址须要加上认证 2). 微服务架构下整合全部服务的API地址
在SpringCloud微服务架构下,咱们通常都会使用zuul作网关,用来作请求转发和鉴权等操做,因此,咱们能够将swagger整合到zuul里面,使用zuul的认证来实现swagger的访问管理api
服务swagger配置-参考上一篇博文架构
zuul引入swagger配置微服务
@Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("zuul服务API") .description("zuul服务API说明") .termsOfServiceUrl("https://server.zuul.com/") .version("1.0") .build(); } }
security.user.name = zuul security.user.password = zuul security.basic.path = /swagger-ui.html security.basic.enabled = true zuul.routes.user.path = /api/user/** zuul.routes.user.stripPrefix = false zuul.routes.user.serviceId = user zuul.routes.userSwagger.path = /user/** zuul.routes.userSwagger.stripPrefix = true zuul.routes.userSwagger.serviceId = user
访问zuul的swagger地址输入用户名和密码,效果以下: ui