피드로 돌아가기
Dev.toBackend
원문 읽기
Swashbuckle 제거 및 Microsoft OpenAPI 도입을 통한 의존성 최적화
Umbraco 18 and OpenAPI: a heads-up for extension developers
AI 요약
Context
Umbraco 18 버전에서 OpenAPI 문서 생성 라이브러리를 Swashbuckle.AspNetCore에서 Microsoft.AspNetCore.OpenApi로 교체. 외부 Third-party 의존성을 줄여 프레임워크 유지보수성을 높이고 ASP.NET Core 표준을 따르기 위한 결정.
Technical Solution
AddBackOfficeOpenApiDocument확장 메서드 도입을 통한 보일러플레이트 코드 제거 및 표준화된 기본 설정 적용[MapToApi(documentName)]어트리뷰트 기반의 엔드포인트 스코핑으로 문서 생성 범위 정밀 제어WithJsonOptions설정을 통한 런타임 직렬화 옵션과 OpenAPI 스키마 생성 옵션의 일치화로 SDK 불일치 방지InterceptorsNamespaces설정을 .csproj에 추가하여 Source Generator 기반의 XML 문서 주석 처리 오류(CS9137) 해결WithBackOfficeAuthentication을 통한 OAuth2 보안 스킴 통합 및 Swagger UI 내 인증 플로우 자동화- 하위 호환성을 위해 Swashbuckle 유지 시
AddOpenApiDocumentToUi를 이용한 UI 플러그인 방식 제공
실천 포인트
- OpenAPI 문서 생성 시 런타임 JsonOptions와 스키마 생성 옵션이 일치하는지 확인 - 클래스 라이브러리 프로젝트에서 Source Generator 사용 시 Web SDK 전용 Property 설정 여부 검토 - 외부 의존성 라이브러리를 프레임워크 내장 라이브러리로 대체하여 의존성 그래프 단순화 시도