Open 생성 방법기존 Spring REST API의 API 3.0 YAML 파일?
Open을 생성하려는 기존 Spring REST API가 있습니다.Swagger 2.0 JSON/YAML이 아닌 API 3.0 YAML 파일?
현재 Spring Fox는 YAML 생성을 지원하지 않습니다.Swagger 2.0으로 JSON을 생성합니다(OPEN API 3.0 사양에 따름).
또한 https://github.com/openapi-tools/swagger-maven-plugin도 있지만 Spring Rest를 지원하지 않는 것 같습니다.
YAML 파일을 생성할 수 있는 Kongchen spring-maven-plugin을 사용해 보았습니다만, 다음과 같은 OPEN API 3.0이 아닌 Swagger 2.0의 정의를 사용하고 있습니다.
swagger: "2.0"
info:
description: "Test rest project"
version: "1.0"
title: "Some desc"
termsOfService: "http://swagger.io/terms/"
contact:
name: "Rest Support"
url: "http://www.swagger.io/support"
email: "support@swagger.io"
license:
name: "Apache 2.0"
url: "http://www.apache.org/licenses/LICENSE-2.0.html"
host: "example.com"
basePath: "/api/"
그래서 제 질문은 어떻게 하면 다음과 같은 OPEN API YAML 파일을 생성할 수 있을까요?
openapi: 3.0.0
info:
description: Some desc
version: "1.0"
title: Test rest project
termsOfService: http://swagger.io/terms/
contact:
name: Rest Support
url: http://www.swagger.io/support
email: support@swagger.io
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
현재 사용하고 있습니다.swagger-maven-plugin
Swagger 2.0 정의로 YAML 파일을 생성하고 이를 Open API 3.0 정의로 변환합니다.swagger2openapi
https://mermade.org.uk/openapi-converter 에서 참조해 주세요.
질문 1:
캔 스프링-메이븐-플러그io.swagger.v3.oas.annotations
YAML을 생성하시겠습니까?
질문 2:
봄 MVC 프로젝트에서 OPEN API 정의를 사용하여 YAML을 생성하는 가장 좋은 방법은 무엇입니까?
질문 3:
할 수 있다io.swagger.v3.oas
봄 프로젝트와 함께 사용할 것인가 아니면 JAX-RS 프로젝트에만 사용할 것인가?
최근에 사용하고 있습니다.springdoc-openapi
자바 라이브러리스프링 부트 프로젝트를 사용하여 API 문서 생성을 자동화하는 데 도움이 됩니다.
자동으로 전개됩니다.swagger-ui
매뉴얼은 다음 공식 [swagger-ui jars]를 사용하여 HTML 형식으로 제공됩니다.
그러면 다음 위치에서 Swagger UI 페이지를 사용할 수 있습니다.http://server:port/context-path/swagger-ui.html
및 오픈API 설명은 다음 URL에서 json 형식으로 제공됩니다.http://server:port/context-path/v3/api-docs
- server: 서버명 또는 IP
- port: 서버 포트
- context-path:응용 프로그램의 컨텍스트 경로
매뉴얼은 다음 경로에서 yaml 형식으로도 구할 수 있습니다./v3/api-docs.yml
프로젝트 의존관계 목록에 라이브러리 추가(추가 설정 불필요)
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.2.3</version>
</dependency>
오랫동안 도서관을 놓쳤거든요마지막으로, 저만의 발전기 https://github.com/jrcodeza/spring-openapi를 구현하기로 했습니다. 여러분도 확인해 보세요.반영을 기반으로 하며 javax 및 spring 주석을 지원합니다.또한 Jackson 주석을 기반으로 (판별자를 사용하여) 상속 모델을 생성합니다.또한 생성 프로세스를 변경하려는 경우(예: 자체 주석이 있고 스키마의 생성된 섹션을 조정해야 하는 경우) 자체 절편도 정의할 수 있습니다.런타임 모드 또는 메이븐 플러그인으로 사용할 수 있습니다.오픈도 있습니다.API3에서 Java 클라이언트 생성기로 모델을 생성합니다.또한 올바른 상속을 위해 Javax 주석과 Jackson 주석도 생성합니다.
언급URL : https://stackoverflow.com/questions/54921110/how-to-generate-openapi-3-0-yaml-file-from-existing-spring-rest-api
'programing' 카테고리의 다른 글
angular.js는 어떻게 내부 HTML을 재평가/재컴파일합니까? (0) | 2023.03.06 |
---|---|
Xcode 11.0 빌드 get 오류 - 메서드의 알 수 없는 인수 유형 '_attribute__' - [RCTAppState getCurrentAppState:error:] (0) | 2023.03.06 |
TypeScript TS7015: 인덱스 식이 '번호' 유형이 아니므로 요소에 암묵적으로 '임의' 유형이 있습니다. (0) | 2023.03.06 |
Powershell을 사용하여 JSON 개체를 파일에 저장하는 방법 (0) | 2023.03.06 |
각도로 페이지 제목을 설정하는 방법JS (0) | 2023.03.06 |