API 가져오기 및 게시

완료됨

API 게이트웨이를 통해 API를 사용할 수 있도록 하려면 API를 가져와서 게시해야 합니다.

신발 회사의 예에서 NorthWind Shoes는 선택된 파트너가 재고 및 재고 수준을 쿼리할 수 있게 하려고 합니다.

여기서는 API를 Azure API Management로 가져오는 방법과 클라이언트에서 API를 사용할 수 있게 하는 방법에 대해 알아봅니다.

API

API는 조직에서 특정 데이터를 잠재적 개발자 또는 파트너에게 공개하는 표준화된 방법입니다. 예를 들어 이전 연습에서 제품 및 재고에 대한 정보를 공유하는 API를 만들었습니다.

API를 사용할 수 있게 하는 것은 API를 API Management로 가져오는 것으로 시작합니다. 그러면 다음을 수행할 수 있습니다.

  • API 게이트웨이의 시각화 도구를 사용하여 API를 테스트합니다.
  • 정책을 사용하여 API에 대한 액세스를 관리합니다.

API 프레임워크

다양한 API 프레임워크와 표준이 있습니다. API Management에서 API를 가져오기 위해 제공하는 몇 가지 옵션은 다음과 같습니다.

형식 세부 정보
HTTP 빈 API 정의를 사용하여 API를 가져올 수 있습니다. 그런 다음, 필요한 모든 매개 변수를 수동으로 지정합니다.
WebSocket 백 엔드 WebSocket 서비스에 대한 통과를 설정합니다.
GraphQL 백 엔드 GraphQL 서비스에 대한 통과를 설정하거나 GraphQL 스키마를 가져오고 사용자 지정 필드 해석기를 사용하여 가상 GraphQL API를 만듭니다.
OpenAPI OpenAPI는 RESTful API에 대한 모든 엔드포인트 및 작업과 모든 입력 및 출력 매개 변수를 문서화하는 사양입니다. OpenAPI는 원래 Swagger라고 했습니다.
WADL WADL(Web Application Description Language)은 HTTP 기반 웹 서비스에 대한 XML 설명입니다. WSDL보다 더 간단한 형식이고 더 가볍습니다.
WSDL WSDL(Web Service Description Language)은 HTTP뿐만 아니라 모든 네트워크 서비스에 대한 XML 설명입니다.

여러 백 엔드 Azure 리소스에서 API를 가져올 수도 있습니다.

형식 세부 정보
논리 앱 논리 앱은 데이터 원본을 사용하여 워크플로와 통합을 오케스트레이션하고 자동화하는 데 사용됩니다.
App Service Azure의 API 앱 서비스 내에서 호스팅되는 API입니다.
함수 앱 트리거를 통해 호출할 수 있는 서버리스 코드입니다.
Container App 마이크로 서비스에 대한 서버리스 컨테이너입니다.

API 가져오기

API를 Azure API Management로 가져오는 방법에는 여러 가지가 있습니다.

Azure Portal을 사용하여 API를 선택한 다음, + API 추가를 선택합니다. 먼저 가져오려는 API 유형을 선택합니다.

Screenshot of Azure portal showing API Management service with the APIs section highlighted and selected.

그런 다음, API 사양에 대한 링크를 URL 또는 파일 및 API 이름으로 제공합니다. 다음은 OpenAPI 가져오기의 예입니다.

Screenshot of create from OpenAPI specification import settings with OpenAPI specification and display name fields highlighted.

Azure Portal은 많은 API를 가져오고 구성하는 데 가장 효율적인 도구가 아닙니다. API 관리를 확장할 때 Azure CLI, Azure Resource Manager 또는 Bicep 템플릿, Azure PowerShell 등과 같은 다른 도구가 필요합니다. 예를 들어 Azure PowerShell cmdlet을 사용하여 API 게이트웨이 배포, 제품 정의 및 구성, API 가져오기, 사용자 및 구독 관리를 할 수 있습니다.

시각화

API 게이트웨이는 가져온 API를 통해 데이터가 처리되는 방식을 시각화하는 방법으로 사용할 수 있습니다. 데이터 세트와 상호 작용하고 API를 통해 매개 변수를 전달할 수 있습니다.

관리자는 Azure Portal에서 API를 시각화할 수 있습니다.

Screenshot of Azure portal API configuration showing a highlighted GET request test on an imported API.

정책

정책은 구성을 통해 API의 동작을 변경할 수 있는 강력한 기능을 제공합니다. API의 요청 또는 응답에서 순차적으로 실행되는 명령문의 컬렉션으로 존재합니다.

인기 있는 구성에 포함되는 항목은 다음과 같습니다.

  • XML에서 JSON으로 변환
  • 들어오는 호출의 수를 제한하는 호출 속도 제한
  • 인바운드 및 아웃바운드 헤더 설정

Azure Portal을 사용하여 다양한 정책을 API에 적용합니다. 정책은 디자인 탭에서 볼 수 있습니다.

Screenshot of Azure portal showing API configuration for all operations with base policies highlighted for inbound, outbound, and backend sections.

디자인 탭을 사용하여 새 정책을 추가할 수도 있습니다.

Screenshot of Azure portal showing inbound policy options for API configuration.

Product

제품은 API의 컬렉션입니다. API는 둘 이상의 제품에 할당할 수 있습니다. 예를 들어 하나의 NorthWindShoesPartners 제품에서 파트너에 대한 두 개의 API를 공개하도록 할 수 있습니다.

제품 NorthWindShoesPartners
API 1 재고
API 2 계획

공급업체의 경우 하나의 API만 공개하는 것이 좋습니다.

제품 NorthWindShoesSuppliers
API 1 재고
API 2

제품에 서로 다른 액세스 규칙, 사용 할당량 및 사용 조건이 적용될 수 있도록 정책을 할당합니다. 따라서 파트너와 공급업체에서 재고 API에 대해 서로 다른 액세스 권한이 적용되도록 하려면 API를 서로 다른 두 제품에 할당합니다.

Azure Portal을 사용하여 API를 제품과 연결합니다.

Screenshot of Azure portal showing API Management with products section highlighted.

사용량을 제외한 모든 가격 책정 계층에는 StarterUnlimited의 두 가지 기본 제품이 있습니다. Unlimited 제품은 연결된 API의 수에 제한이 없으므로 프로덕션 API Management용으로 설계되었습니다. 새 제품은 필요한 만큼 만들 수 있습니다. Starter 제품은 API 호출이 분당 5회, 주당 최대 100회로 제한됩니다.