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를 가져오기 위해 제공하는 몇 가지 옵션은 다음과 같습니다. 다음 표의 옵션 포함:
Type | 세부 정보 |
---|---|
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(Web Service Description Language)은 HTTP뿐만 아니라 모든 네트워크 서비스에 대한 XML 설명입니다. |
여러 백 엔드 Azure 리소스에서 API를 가져올 수도 있습니다. 옵션에는 다음 표의 옵션이 포함됩니다.
Type | 세부 정보 |
---|---|
Azure OpenAI Service | 콘텐츠 생성, 요약, 의미 체계 검색 등의 작업을 위한 OpenAI의 언어 모델에 대한 액세스를 제공하는 API. |
논리 앱 | 논리 앱은 데이터 원본을 사용하여 워크플로와 통합을 오케스트레이션하고 자동화하는 데 사용됩니다. |
App Service | Azure의 API 앱 서비스 내에서 호스팅되는 API입니다. |
함수 앱 | 트리거를 통해 호출할 수 있는 서버리스 코드입니다. |
Container App | 마이크로 서비스에 대한 서버리스 컨테이너입니다. |
API 가져오기
API를 Azure API Management로 가져오는 방법에는 여러 가지가 있습니다.
Azure Portal을 사용하여 API를 선택한 다음, + API 추가를 선택합니다. 먼저 가져오려는 API 유형을 선택합니다.
그런 다음, API 사양에 대한 링크를 URL 또는 파일 및 API 이름으로 제공합니다. 다음은 OpenAPI 가져오기의 예입니다.
Azure Portal은 많은 API를 가져오고 구성하는 데 가장 효율적인 도구가 아닙니다. API 관리를 확장할 때 Azure CLI, Azure Resource Manager 또는 Bicep 템플릿, Azure PowerShell 등과 같은 다른 도구가 필요합니다. 예를 들어 Azure PowerShell cmdlet을 사용하여 API 게이트웨이 배포, 제품 정의 및 구성, API 가져오기, 사용자 및 구독 관리를 할 수 있습니다.
시각화
API 게이트웨이는 가져온 API를 통해 데이터가 처리되는 방식을 시각화하는 방법으로 사용할 수 있습니다. 데이터 세트와 상호 작용하고 API를 통해 매개 변수를 전달할 수 있습니다.
관리자는 Azure Portal에서 API를 시각화할 수 있습니다.
정책
정책은 구성을 통해 API의 동작을 변경할 수 있는 강력한 기능을 제공합니다. API의 요청 또는 응답에서 순차적으로 실행되는 명령문의 컬렉션으로 존재합니다.
인기 있는 구성에 포함되는 항목은 다음과 같습니다.
- XML에서 JSON으로 변환
- 들어오는 호출의 수를 제한하는 호출 속도 제한
- 인바운드 및 아웃바운드 헤더 설정
Azure Portal을 사용하여 다양한 정책을 API에 적용합니다. 정책은 디자인 탭에서 볼 수 있습니다.
디자인 탭을 사용하여 새 정책을 추가할 수도 있습니다.
제품
제품은 API의 컬렉션입니다. API는 둘 이상의 제품에 할당할 수 있습니다. 예를 들어 하나의 NorthWindShoesPartners 제품에서 파트너에 대한 두 개의 API를 공개하도록 할 수 있습니다.
제품 | NorthWindShoesPartners |
---|---|
API 1 | 재고 |
API 2 | 계획 |
공급업체의 경우 하나의 API만 공개하는 것이 좋습니다.
제품 | NorthWindShoesSuppliers |
---|---|
API 1 | 재고 |
API 2 |
제품에 서로 다른 액세스 규칙, 사용 할당량 및 사용 조건이 적용될 수 있도록 정책을 할당합니다. 따라서 파트너와 공급업체에서 재고 API에 대해 서로 다른 액세스 권한이 적용되도록 하려면 API를 서로 다른 두 제품에 할당합니다.
Azure Portal을 사용하여 API를 제품과 연결합니다.
여러 가격 책정 계층에서 기본 제품은 두 가지가 있습니다. Starter 및 Unlimited의 두 가지 기본 제품이 있습니다.입니다. Unlimited 제품은 연결된 API의 수에 제한이 없으므로 프로덕션 API Management용으로 설계되었습니다. 새 제품은 필요한 만큼 만들 수 있습니다. Starter 제품은 API 호출이 분당 5회, 주당 최대 100회로 제한됩니다.