IT could be
Swagger Authorize 버튼으로 JWT token test 하기 본문
Swagger 적용은 아래의 링크에서 확인하세요 !
SpringBoot REST API 명세 문서화 - Swagger
> Swagger 3.0.0 의존성 추가를 위해 build.gradle dependencies에 추가 implementation "io.springfox:springfox-boot-starter:3.0.0" implementation "io.springfox:springfox-swagger-ui:3.0.0" configuration/SwaggerConfig.java @Configuration public class
itcouldbe-v.tistory.com
JWT 토큰으로 인증 때 swagger에 Authorize 버튼을 이용해서 key를 포함해서 TEST 할 수 있다.
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiKey;
import springfox.documentation.service.AuthorizationScope;
import springfox.documentation.service.SecurityReference;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spi.service.contexts.SecurityContext;
import springfox.documentation.spring.web.plugins.Docket;
import java.util.Arrays;
import java.util.List;
@Configuration
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.OAS_30)
.securityContexts(Arrays.asList(securityContext()))
.securitySchemes(Arrays.asList(apiKey()))
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
private SecurityContext securityContext() {
return SecurityContext.builder()
.securityReferences(defaultAuth())
.build();
}
private List<SecurityReference> defaultAuth() {
AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");
AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
authorizationScopes[0] = authorizationScope;
return Arrays.asList(new SecurityReference("Authorization", authorizationScopes));
}
private ApiKey apiKey() {
return new ApiKey("Authorization", "Authorization", "header");
}
}
import 패키지 까지 포함한 코드다.
Value 안에 Bearer 를 맨 앞에 붙여 JWT를 넣고 Authorize 하면 된다.
Logout or Close를 선택한다.
JWT token을 넣어서 test 성공 !
'개발공부 εїз' 카테고리의 다른 글
Convention (0) | 2022.12.28 |
---|---|
Lombok @NoArgsConstructor 와 @Builder 그리고 @AllArgsConstructor (0) | 2022.12.23 |
Linux 시간 한국 표준시(KST) 변경하기 (0) | 2022.12.13 |
Linux crontab (0) | 2022.12.13 |
Docker 명령어 (0) | 2022.12.12 |
Comments