281장. REST Swagger 구성 요소


Camel 버전 2.19에서 사용 가능

rest-swaggerSwagger (Open API) 사양 문서에서 나머지 생산자를 구성하고 RestProducerFactory 인터페이스를 구현하는 구성 요소에 위임합니다. 현재 알려진 작업 구성 요소는 다음과 같습니다.

Maven 사용자는 이 구성 요소를 위해 다음 종속성을 pom.xml 에 추가해야 합니다.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-rest-swagger</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

281.1. URI 형식

rest-swagger:[specificationPath#]operationId

여기서 operationId 는 Swagger 사양의 작업 ID이며 specificationPath 는 사양 경로입니다. specificationPath 가 지정되지 않은 경우 기본값은 swagger.json 입니다. 조회 메커니즘에서는 Camels ResourceHelper 를 사용하여 리소스를 로드할 수 있습니다. 즉, CLASSPATH 리소스(classpath:my-specification.json), 파일(file:/some/path.json), 웹(http://api.example.com/swagger.json)을 참조하거나 빈(ref:nameOfBean) 메서드를 사용하거나 빈(bean:nameOfBean) 메서드를 사용할 수 있습니다. Swagger의 자체 리소스 로드 지원 실패.

이 구성 요소는 HTTP 클라이언트 역할을 하지 않으며 위에서 언급한 다른 구성 요소에 이를 위임합니다. 조회 메커니즘은 RestProducerFactory 인터페이스를 구현하고 이를 사용하는 단일 구성 요소를 검색합니다. CLASSPATH에 둘 이상의 항목이 포함된 경우 속성 componentName 을 설정하여 위임할 구성 요소를 표시해야 합니다.

대부분의 구성은 Swagger 사양에서 가져온 것이지만 구성 요소 또는 끝점에 지정하여 해당 구성을 재정의하기 위한 옵션이 있습니다. 일반적으로 사양과 다른 경우 host 또는 basePath 를 재정의해야 합니다.

참고

host 매개변수에는 스키마, 호스트 이름 및 포트 번호가 포함된 절대 URI(예: https://api.example.com)가 포함되어야 합니다.

componentName 을 사용하면 요청을 수행하는 데 사용되는 구성 요소를 지정할 수 있습니다. 이 이름의 구성 요소는 Camel 컨텍스트에 있어야 하며 필수 RestProducerFactory 인터페이스를 구현해야 합니다(상위에 나열된 구성 요소를 수행).

구성 요소 또는 끝점 수준에서 componentName 을 지정하지 않으면 CLASSPATH가 적합한 위임자를 검색합니다. 이를 위해 RestProducerFactory 인터페이스를 구현하는 CLASSPATH에는 하나의 구성 요소만 있어야 합니다.

이 구성 요소의 끝점 URI는 반복적인 호출로 REST 작업의 매개변수를 끝점 매개변수로 지정할 수 있는 메시지 헤더 외에도 모든 후속 호출에 대해 일정하게 설정되므로 /api/7.10/users/ {}와 같은 경로의 모든 호출에 대해 정기적으로 이 기능을 사용하는 것이 좋습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.