프로젝트
Threads SNS 구현하기 (1) - 개요
요약
- API 명세서를 편리하게 작성하기 위해서 SpringDoc 라이브러리를 통해서 Swagger UI 를 사용하는 과정에서 GET 통신에서 Query Parameter 로 @PathVariable 적용 했지만 찾지 못해서 파라미터를 입력하지 못하게 되는 상황이 발생
- 기술 환경
- 에러 상황
배경
-
Swagger UI 를 SpringDoc 라이브러리에서 API 명세서를 반영했다.

-
단건 Post 내용에 대해서 파라미터를 제공해야한다.
이 과정에서 파라미터 정보가 Swagger 에 반영이 되지 않게 되면서 문제가 된다.
-
정상적인 케이스라면 아래와 같이 파라미터를 입력할 수 있어야 한다.

분석
- 실제 URL 이 동작하지 않는 것은 아니다.
포스트맨, Talend API 등을 활용하면 @PathVariable 이 정상 작동하는 것을 알 수 있다.
- SpringDoc 과 Swagger UI 가 적용되는 방식에 대해서 알아보는 것이 좋아 보인다.
- SpringDoc : 애플리케이션 시작 시점에 리플렉션을 통해 Spring 어노테이션을 스캔하여 이를 바탕으로 OpenAPI 문서를 생성
- Swagger UI : 생선된 OpenAPI 문서를 바탕으로 시각화하여 사용자에게 보여 줍니다.
- 그럼 왜 이런 이슈가 발생하는 것 일까?
- 여기에 개인적인 생각을 추가한다면, 일반적인 Spring Web 환경에서는 @PathVariable 를 사용하는데 있어서 문제가 없었기에 Swagger UI 에도 잘 나타날 거라 생각 했다.