Azure Logic Apps 사용자 지정 커넥터를 사용하여 API 액세스

완료됨

인쇄 프레이밍 회사의 수석 개발자로서 Azure Logic Apps에서 내부 사용자 지정 빌드 Web API를 호출하려고 합니다. API는 액자 크기에 따라 액자의 가격을 계산합니다. Azure Logic Apps 워크플로에서 API에 액세스하려면 자체 커넥터를 만들어야 합니다.

이 단원에서는 Azure Logic Apps 워크플로에서 사용자 지정 커넥터를 만들고 사용하는 방법에 대해 배웁니다.

사용자 지정 커넥터를 왜 사용하나요?

워크플로 시나리오에 미리 빌드된 커넥터보다 더 많은 것이 필요한 경우도 있습니다. 워크플로에서 호출하려는 사내 또는 사용자 지정 API가 있다고 가정해보겠습니다. Azure Logic Apps의 기본 제공 커넥터는 이 시나리오를 지원하지 않습니다. 대신 API를 설명하는 사용자 지정 커넥터를 만들어야 합니다. 워크플로가 API 이벤트에 응답하도록 하려면 커넥터에서 트리거를 정의합니다. 워크플로에서 API를 호출하려는 경우 커넥터에서 동작을 정의합니다.

사용자 지정 커넥터에 대한 Web API 설명하기

Azure Portal에서 사용자 지정 커넥터를 만들고 대상 API를 참조할 수 있습니다. API는 사용자 지정 커넥터에 자신을 설명해야 합니다. 그렇게 해야 커넥터가 Azure Logic Apps에 올바른 메서드와 매개 변수를 표시할 수 있습니다. API에서 OpenAPI 정의 또는 Postman 컬렉션을 사용하여 이 설명을 구현할 수 있습니다. API를 설명하는 두 가지 방법을 살펴보겠습니다.

Postman 앱

Postman 앱은 요청 URL 및 모든 필요 인증을 제공하도록 요구합니다. 또한 JSON 형식의 요청 본문 정의와 함께 API 키와 콘텐츠 형식도 지정합니다. Postman 앱에서 요청을 보내면 API가 응답을 반환합니다. Postman 앱은 응답을 사용하여 컬렉션을 생성합니다. 컬렉션을 내보낸 후 사용자 지정 커넥터에 API를 설명하는 데 사용할 수 있습니다.

OpenAPI 정의

OpenAPI 정의 파일은 API의 메서드, 매개 변수 및 출력을 나열하는 JSON 파일입니다. .NET에서 Swashbuckle NuGet 패키지를 API 프로젝트에 추가해 OpenAPI 파일을 만들 수 있습니다. 그런 다음, Web API의 소스 코드에 다음 코드를 추가합니다.

  1. Startup.cs 파일에 Swashbuckle의 using 문을 추가합니다.

    using Swashbuckle.AspNetCore.Swagger;
    
  2. ConfigureServices 메서드에 다음 코드를 추가합니다.

    services.AddSwaggerGen(c =>
    {
       c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
    });
    
  3. 다음 코드를 Configure 메소드에 추가합니다.

    if (env.IsDevelopment())
    {
       // Enable middleware to serve generated Swagger as a JSON endpoint.
       app.UseSwagger();
    
       // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), 
       // specifying the Swagger JSON endpoint.
       app.UseSwaggerUI(c =>
       {
          c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
       });
    }
    

    배포 시 이 코드는 Web API 메서드를 테스트 하는 데 사용할 수 있는 웹 페이지인 Swagger UI를 설치합니다. 또한 이 코드는 API를 설명하고 OpenAPI 표준과 호환되는 JSON 파일을 만들고 게시합니다. JSON 파일을 다운로드하고 사용하여 Azure Logic Apps에서 사용자 지정 커넥터를 만들 수 있습니다.

    참고

    이전 연습에서 미리 빌드한 Web API를 Azure에 배포했습니다. 기본적으로 이 배포에는 이전 Swagger 코드가 포함되어 있습니다. 다음 연습에서는 Swagger가 만든 OpenAPI 파일을 사용자 지정 커넥터에 업로드합니다.

Azure Portal에서 사용자 지정 커넥터 만들기

설명을 Postman 컬렉션 또는 OpenAPI 정의 파일로 구현한 후 Azure Portal에서 다음 상위 단계를 사용하여 사용자 지정 커넥터를 빌드할 수 있습니다.

  1. Logic Apps 사용자 지정 커넥터 리소스 유형을 사용하여 새 Azure 리소스를 만듭니다.

  2. Postman 컬렉션 또는 OpenAPI 정의 파일을 업로드합니다.

    Screenshot that shows how to upload an OpenAPI file for a custom connector.

  3. 설치 마법사 프롬프트에 따라 커넥터 만들기를 완료합니다.

    예를 들어 개발자가 워크플로 디자이너에서 볼 수 있는 커넥터 이름을 지정할 수 있습니다. 개발자가 보안 연결을 구성하고 커넥터를 올바르게 사용하는 데 도움이 되는 설명을 추가할 수 있습니다.

  4. 새 커넥터를 저장합니다.

완료되면 Azure Logic Apps 워크플로에서 커넥터를 사용할 수 있습니다. 다음 연습에서는 고유한 커넥터를 만드는 방법을 보여 줍니다.