swagger3整合oauth2 认证token

引入swagger3依赖

<!--Swagger3 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

swagger配置文件编写

@Bean
public Docket createRestApi(){
return new Docket(DocumentationType.OAS_30)
.enable(enable)
.apiInfo(apiInfo())
.groupName("xx项目接口")
.select()
//配置要扫描接口的方式
.apis(RequestHandlerSelectors.basePackage("com.os"))
.build()

.securitySchemes(securitySchemes())
.securityContexts(securityContexts());

}
/**
* 认证的安全上下文
*/
private List<SecurityScheme> securitySchemes() {
List<SecurityScheme> securitySchemes = new ArrayList<>();
securitySchemes.add(new ApiKey("Authorization", "Authorization", "header"));
return securitySchemes;
}

/**
* 授权信息全局应用
*/
private List<SecurityContext> securityContexts() {
List<SecurityContext> securityContexts = new ArrayList<>();
securityContexts.add(SecurityContext.builder()
.securityReferences(defaultAuth())
.forPaths(PathSelectors.any()).build());
return securityContexts;
}
private List<SecurityReference> defaultAuth() {
AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");
AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
authorizationScopes[0] = authorizationScope;
List<SecurityReference> securityReferences = new ArrayList<>();
securityReferences.add(new SecurityReference("Authorization", authorizationScopes));
return securityReferences;
}

请求头:Authorization

swagger中的效果展示

image-20210630123347451