적용 대상: Azure Logic Apps(사용량 + 표준)
Azure Logic Apps의 워크플로에서 호출하려는 기존 웹 API 또는 REST API가 있는 경우 먼저 이러한 API를 호출하기 전에 몇 가지 설정 단계를 완료해야 합니다. 주로 API를 웹앱 또는 API 앱으로 배포해야 합니다. 확장성이 뛰어나고 쉬운 API 호스팅을 제공하는 클라우드 플랫폼인 Azure App Service에서 API를 호스팅하여 이 작업을 수행할 수 있습니다.
App Service에서 API를 웹앱으로 배포할 수 있지만 API를 API 앱으로 배포하는 것이 좋습니다. 이 방법을 사용하면 클라우드 및 온-프레미스 환경에서 API를 빌드, 호스트 및 사용할 때 작업을 더 쉽게 수행할 수 있습니다. API 앱에 배포하기 위해 API의 코드를 변경할 필요가 없습니다.
워크플로에서 API를 호출할 수 있지만 최상의 환경을 위해 웹앱 또는 API 앱에 Swagger 메타데이터 를 추가합니다. 이 Swagger 문서에서는 API 작업 및 매개 변수를 설명합니다. 이를 통해 논리 앱 워크플로가 API에서 더 빠르고 쉽게 작동할 수 있습니다. 또한 워크플로가 API에 액세스할 수 있도록 웹앱 또는 API 앱에서 CORS(원본 간 리소스 공유)를 설정해야 합니다.
이 가이드에서는 Swagger 문서를 추가하고, 웹앱 또는 API 앱에 대해 CORS를 설정하고, App Service에서 API에 대한 배포 및 호스팅을 완료한 후 워크플로에서 API를 호출하는 옵션을 제공하는 방법을 보여 줍니다.
자세한 내용은 다음을 참조하세요.
필수 조건
활성 구독이 있는 Azure 계정. 구독이 없는 경우 무료 계정을 만듭니다.
Azure Logic Apps의 워크플로와 호환되는 패턴 중 하나를 따르고 App Service에 웹앱 또는 API 앱으로 배포되는 웹 API 또는 REST API입니다.
자세한 내용은 다음을 참조하세요.
웹앱 또는 API 앱에 Swagger 및 CORS 액세스 추가
웹앱 또는 API 앱에 Swagger 문서를 추가하는 경우 Azure Logic Apps의 워크플로 디자이너는 API에서 사용 가능한 작업 및 매개 변수를 더 쉽게 찾아서 표시할 수 있습니다. 또한 워크플로가 API에 액세스할 수 있도록 웹앱 또는 API 앱에서 CORS(원본 간 리소스 공유)를 설정해야 합니다.
디자이너의 워크플로에서 Swagger 문서를 읽을 수 있도록 하려면 웹앱 또는 API 앱에서 API 정의 속성 및 CORS 액세스를 설정합니다.
Azure Portal에서 웹앱 또는 API 앱 리소스를 찾아 엽니다.
앱 리소스 사이드바에서 개요를 선택합니다.
속성 탭의 도메인 아래에 있는 기본 도메인 속성에서 다음 단계를 위해 웹 사이트 이름을 복사하여 저장합니다.
앱 리소스 사이드바의 API 아래에서 API 정의를 선택합니다. API 정의 위치의 경우 일반적으로 다음 형식을 사용하지만 Swagger 파일이 최신 API 사양을 사용하는 경우 다를 수 있는 Swagger JSON 파일의 URL을 입력합니다.
https://<website-name>/swagger/docs/v1다음 예제에서는 최신 API 사양이 있는 Swagger URL을 보여줍니다.
완료되면 저장을 선택합니다.
앱 리소스 사이드바의 API에서 CORS를 선택합니다.
허용되는 원본의 경우 CORS 정책을 모두 허용하는 '*'로 설정합니다.
이 설정은 Azure Logic Apps에서 워크플로 디자이너의 요청을 허용합니다.
도구 모음에서 저장을 선택합니다.
자세한 내용은 Azure App Service에서 CORS를 사용하여 RESTful API 호스트를 참조하세요.
워크플로에서 API 호출
API 정의 URL 및 CORS를 설정한 후 API 작업이 커넥터 갤러리에 표시되어 워크플로를 찾아서 추가합니다.
OpenAPI URL이 있는 웹 사이트를 보려면 워크플로 디자이너에서 구독 웹 사이트를 찾아볼 수 있습니다.
Swagger 문서를 가리켜 사용 가능한 작업 및 입력을 보려면 HTTP + Swagger 트리거 또는 작업을 사용합니다.
Swagger 문서가 없거나 노출되지 않는 API를 포함하여 API를 호출하려면 항상 HTTP 작업을 사용하여 요청을 만들 수 있습니다.