REST 단계에서 OpenAPI 지원
OpenAPI 사양에서 임포트한 정보로 REST 단계 필드와 동작 입력을 채웁니다. YAML 또는 JSON에 대한 URL을 제공하거나 컨텐츠를 복사하여 붙여넣는 방식으로 사양을 임포트합니다.
혜택
REST 단계의 OpenAPI 지원은 이러한 이점을 제공합니다.
- OpenAPI 사양에서 임포트한 정보를 사용하여 REST 단계 작업, HTTP 메서드, 매개변수, 요청 본문, 경로 및 헤더를 구성합니다.
- Flow Designer 인터페이스를 종료하지 않고 사용 가능한 API 작업을 검토합니다.
- REST 단계에서 OpenAPI 서비스에 유효한 요청을 보내고 올바른 위치의 REST 단계에 추가하는 데 필요한 입력을 생성합니다.
생성된 입력
OpenAPI 사양을 임포트하면 시스템에서 필요한 입력을 생성하여 적절한 REST 단계 양식에 추가합니다. 런타임 시 시스템은 작업에 제공된 입력 값이 포함된 REST 요청을 보냅니다. 예를 들어 API가 요청에 전달된 이름 매개변수를 필요로 하는 경우 시스템은 이름 입력을 생성하여 REST 단계에 추가합니다. 플로우에 작업을 추가하면 이름이 작업에 입력됩니다.
시스템은 OpenAPI 데이터 유형을 데이터 유형에 매핑합니다 워크플로우 스튜디오 . 예를 들어 OpenAPI 사양에 사용자 객체가 필요한 경우 시스템은 입력으로 복잡한 데이터 객체를 생성합니다. 자세한 내용은 복합 데이터를 참조하십시오.
사양 크기 제한
기본적으로 시스템은 최대 10MB의 OpenAPI 사양을 임포트할 수 있습니다. 임포트 크기를 늘리려면 시스템 속성을 업데이트합니다 glide.rest.openapi.max_request_size . 최대값은 100MB입니다.
사양 관리
REST 단계에서 옵션을 선택하여 OpenAPI 사양을 임포트합니다. 자세한 내용은 REST 단계을(를) 참조하십시오. OpenAPI 사양을 임포트하면 OpenAPI [sys_openapi] 테이블에 기록이 생성됩니다. 이 테이블에서 직접 사양 기록을 보거나 삭제할 수 있습니다. 사양을 업데이트하려면 사양을 삭제하고 다시 임포트합니다.
설계 고려 사항
이러한 고려 사항을 염두에 두고 OpenAPI 사양에서 REST 단계를 생성합니다.
- 불필요한 REST 단계 매개변수 제거
- OpenAPI 사양을 임포트할 때, 시스템은 사양에 있는 모든 매개변수와 헤더를 REST 단계에 추가합니다. 마지막 REST 단계 값을 검토하고 요청에서 보내지 않으려는 매개변수를 제거합니다. 예를 들어, API가 JSON과 XML에 대한 컨텐츠 유형 헤더를 허용하는 경우 시스템은 두 헤더를 모두 REST 단계에 추가합니다. 응답에서 수신하려는 컨텐츠 유형에 따라 헤더 중 하나를 제거하십시오.
- 입력 레이블을 사용자 친화적으로 만들기
- REST 단계에 필요한 입력 레이블이 명확하고 이해하기 쉬운지 확인합니다. 명확한 레이블을 사용하면 플로우 디자이너가 플로우에서 작업을 사용할 때 필요한 입력을 쉽게 이해할 수 있습니다.
- Flow Designer 구성이 필요하지 않은 입력 제거
- OpenAPI 사양을 임포트할 때 시스템은 사양에 있는 모든 입력을 작업 입력 섹션에 추가합니다. 플로우 디자이너가 구성할 필요가 없는 입력은 모두 제거합니다. 예를 들어, REST 단계 변수가 동작의 다른 단계에서 값을 수신하면 동작 입력이 필요하지 않습니다.
- API 작업 변경 방지
- API 작업 필드의 값을 변경하면 해당 작업에 종속된 모든 값이 제거됩니다. REST 단계 양식에서 OpenAPI 사양 값을 구성한 다음 작업을 변경하면 시스템이 구성을 저장하지 않습니다. 사용자가 수동으로 입력한 값은 영향을 받지 않습니다.
제한
이러한 제한 사항을 사용하여 OpenAPI 사양에서 REST 단계를 생성합니다.
- 요청 본문 미디어 유형
- 요청 본문은 JSON 및 XML 기반 미디어 형식만 지원합니다. 임포트한 OpenAPI 사양에서 선택한 작업에 미디어 유형이 다른 요청 본문이 포함되어 있는 경우 시스템은 문자열 유형의 데이터 알약을 요청 본문 필드에 추가합니다.
- OpenAPI 3.0 구성요소
OpenAPI 3.0은 Swagger 2.0에 새 구성 요소를 추가하여 API를 더 자세히 설명합니다. REST 단계의 OpenAPI 지원은 이러한 구성요소 중 일부를 지원하지만 전부는 지원하지 않습니다. REST 단계에서는 현재 이러한 구성요소를 지원하지 않습니다.
- 스키마 객체: oneOf, anyOf 속성
- 판별자 객체
- 정보 객체: termsOfService, 연락처, 라이센스 필드
- 예제 객체
- 링크 객체
- 콜백 객체
- 보안 체계 객체
- 보안 요구 사항 객체
- 태그 객체
- 외부 문서 객체
- 서버 객체
- 사양 확장
- 재귀 참조
이러한 구성 요소에 대한 자세한 내용은 OpenAPI 설명서에서 확인할 수 있습니다. OpenAPI 사양을 참조하세요.