@Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket templateApi() { ParameterBuilder tokenPar = new ParameterBuilder(); tokenPar.name("token").description("token令牌") .modelRef(new ModelRef("string")).parameterType("header").required(false).build(); return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .useDefaultResponseMessages(false) .select() .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class)) .build().globalOperationParameters(Lists.newArrayList(tokenPar.build())); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("佛山市协同应急指挥系统 Rest API 文档") .version("1.0") .build(); } }
时间: 2024-04-29 10:19:48 浏览: 151
这段代码是一个 Swagger2 的配置类,其中配置了一个 templateApi 的 Docket Bean。在该 Bean 中,我们使用 ParameterBuilder 构建了一个名为 token 的 header 参数,并将其作为全局操作参数添加到 Docket 中。这样,对于所有接口,都会自动添加一个 token 参数。
另外,该配置类还设置了 API 文档的标题和版本号,并指定只扫描标注了 @RestController 注解的类。
需要注意的是,这里的 token 参数是可选的,即 required(false),如果需要对所有接口进行认证,应该将其设置为 required(true)。
阅读全文