
http://localhost:8080/api/v1/swagger-ui/index.html 에 들어가면 이런 식으로 나오지 않는다.
http://localhost:8080/v1/api-docs/swagger-config 이 링크에 요청을 보냈는데 404가 나오네? @Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
// ... 생략
http
.csrf(AbstractHttpConfigurer::disable)
.authorizeHttpRequests(req ->
req
.requestMatchers(
"/auth/**",
"/v3/api-docs/**",
"/swagger-ui/**"
)
.permitAll()
.anyRequest()
.authenticated()
)
// ... 생략
Swagger 관련 url을 추가해준다 ("/v3/api-docs/**", "/swagger-ui/**")
# application.yml
springdoc:
swagger-ui:
path: /swagger-ui.html
config-url: /api/v1/v3/api-docs/swagger-config
url: /api/v1/v3/api-docs
api-docs:
path: /v3/api-docs
packages-to-scan: com.written.app.controller
config-url, url 앞에 현재 context-path인 /api/v1을 추가해준다.

여기서 드는 의문점은, context-path를 보통 /api/v1으로 하는지? 아니면 아예 context-path를 안주고 Controller에서 한땀한땀 작성하는지 궁금해진다.
왜냐면 /api/v1/v3/api-docs/swagger-config에서 v1 v3가 연속으로 나오는게 어색하게 느껴진다.