API Gateway Swagger 통합 기능 구현 완료

주요 변경사항:
- Gateway 라우팅 경로 통일화 (/api/{service}/**)
  * user-service: /api/auth/**
  * bill-service: /api/bills/** (내부적으로 /api/v1/bills/**로 변환)
  * product-service: /api/products/** (내부적으로 /products/**로 변환)
  * kos-mock: /api/kos/** 추가

- OpenAPI 서버 정보 동적 수정
  * 각 서비스의 OpenAPI JSON에 Gateway 경로 정보 주입
  * "Try it out" 기능이 Gateway를 통해 정상 동작하도록 개선

- Swagger UI 설정 개선
  * 서비스별 이모지와 한글 설명 추가
  * 표시 순서 최적화 (User → Bill → Product → KOS → Gateway)

- 서비스별 GroupedOpenApi 빈 추가
  * 각 서비스별 상세 정보와 기능 설명 포함
  * 일관된 API 문서 구조 제공

이제 API Gateway의 Swagger UI에서 모든 마이크로서비스 API가 통합되어 표시되며,
실제 테스트도 가능합니다.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
hiondal
2025-09-10 10:48:59 +09:00
parent 2a719048f8
commit 2df9b7d14f
3 changed files with 204 additions and 15 deletions
+12 -7
View File
@@ -181,18 +181,23 @@ springdoc:
# 큰 헤더 처리를 위한 설정
csrf:
enabled: false
# 서비스별 URL 등록
# 서비스별 URL 등록 (Gateway 통합 순서)
urls:
- name: "Gateway API"
url: "/v3/api-docs/gateway"
- name: "User Service"
- name: "📱 User Service (인증)"
url: "/v3/api-docs/user"
- name: "Bill Service"
display-name: "User Service API"
- name: "💰 Bill Service (요금조회)"
url: "/v3/api-docs/bill"
- name: "Product Service"
display-name: "Bill Inquiry API"
- name: "📦 Product Service (상품변경)"
url: "/v3/api-docs/product"
- name: "KOS Mock Service"
display-name: "Product Change API"
- name: "🔧 KOS Mock Service (외부연동)"
url: "/v3/api-docs/kos"
display-name: "KOS Mock API"
- name: "🌐 Gateway API (게이트웨이)"
url: "/v3/api-docs/gateway"
display-name: "API Gateway"
use-management-port: false
show-actuator: false