Importowanie aplikacji internetowej platformy Azure jako interfejsu API

DOTYCZY: Wszystkie warstwy usługi API Management

W tym artykule pokazano, jak zaimportować aplikację internetową platformy Azure do usługi Azure API Management i przetestować zaimportowany interfejs API przy użyciu witryny Azure Portal.

Uwaga

Rozszerzenie usługi API Management dla programu Visual Studio Code umożliwia importowanie interfejsów API i zarządzanie nimi. Postępuj zgodnie z samouczkiem dotyczącym rozszerzenia usługi API Management, aby zainstalować i rozpocząć pracę.

W tym artykule omówiono sposób wykonywania następujących zadań:

  • Importowanie aplikacji internetowej hostowanej w usłudze App Service
  • Testowanie interfejsu API w witrynie Azure Portal

Uwidacznianie aplikacji internetowej za pomocą usługi API Management

aplikacja systemu Azure Service to oparta na protokole HTTP usługa do hostowania aplikacji internetowych, interfejsów API REST i zapleczy mobilnych. Deweloperzy interfejsów API mogą używać preferowanych stosów technologii i potoków do tworzenia interfejsów API i publikowania zapleczy interfejsu API jako usługi Web Apps w bezpiecznym, skalowalnym środowisku. Następnie użyj usługi API Management, aby uwidocznić usługę Web Apps, zarządzać interfejsami API i chronić je w całym cyklu życia oraz publikować je dla użytkowników.

Usługa API Management jest zalecanym środowiskiem do uwidocznienia interfejsu API hostowanego przez aplikację internetową z kilku powodów:

  • Oddzielenie od zarządzania frontonem i zabezpieczania frontonu uwidocznionego dla użytkowników interfejsu API przed zarządzaniem aplikacją internetową zaplecza i monitorowaniem jej
  • Zarządzanie internetowymi interfejsami API hostowanymi jako usługa Web Apps w tym samym środowisku co inne interfejsy API
  • Stosowanie zasad w celu zmiany zachowania interfejsu API, takiego jak ograniczanie liczby wywołań
  • Bezpośredni użytkownicy interfejsu API do portalu deweloperów z możliwością dostosowywania usługi API Management w celu odnalezienia interfejsów API, żądania dostępu i wypróbowania ich

Aby uzyskać więcej informacji, zobacz About API Management (Informacje o usłudze API Management).

Specyfikacja interfejsu OpenAPI a operacje symboli wieloznacznych

Usługa API Management obsługuje importowanie aplikacji internetowych hostowanych w usłudze App Service, które obejmują specyfikację interfejsu OpenAPI (definicję struktury Swagger). Jednak specyfikacja interfejsu OpenAPI nie jest wymagana.

  • Jeśli aplikacja internetowa ma specyfikację interfejsu OpenAPI skonfigurowaną w definicji interfejsu API, usługa API Management tworzy operacje interfejsu API mapowane bezpośrednio na tę definicję, w tym wymagane ścieżki, parametry i typy odpowiedzi.

    Zalecana jest specyfikacja interfejsu OpenAPI, ponieważ interfejs API jest importowany do usługi API Management z wysoką wiernością, zapewniając elastyczność weryfikowania, zabezpieczania i aktualizowania konfiguracji dla każdej operacji oraz zarządzania nimi.

  • Jeśli nie podano specyfikacji interfejsu OpenAPI, usługa API Management generuje operacje symboli wieloznacznych dla typowych czasowników HTTP (GET, PUT itd.). Dołącz wymaganą ścieżkę lub parametry do operacji z symbolami wieloznacznymi, aby przekazać żądanie interfejsu API do interfejsu API zaplecza.

    W przypadku operacji z symbolami wieloznacznymi nadal można korzystać z tych samych funkcji usługi API Management, ale operacje nie są domyślnie zdefiniowane na tym samym poziomie szczegółowości. W obu przypadkach można edytować lub dodawać operacje do zaimportowanych interfejsów API.

Przykład

Aplikacja internetowa zaplecza może obsługiwać dwie operacje GET:

  • https://myappservice.azurewebsites.net/customer/{id}
  • https://myappservice.azurewebsites.net/customers

Zaimportujesz aplikację internetową do usługi API Management w ścieżce, takiej jak https://contosoapi.azureapi.net/store. W poniższej tabeli przedstawiono operacje zaimportowane do usługi API Management z lub bez specyfikacji interfejsu OpenAPI:

Typ Zaimportowane operacje Przykładowe żądania
Specyfikacja interfejsu OpenAPI GET /customer/{id}

GET /customers
GET https://contosoapi.azureapi.net/store/customer/1

GET https://contosoapi.azureapi.net/store/customers
Symbole wieloznaczne GET /* GET https://contosoapi.azureapi.net/store/customer/1

GET https://contosoapi.azureapi.net/store/customers

Operacja symboli wieloznacznych umożliwia wysyłanie tych samych żądań do usługi zaplecza co operacje w specyfikacji interfejsu OpenAPI. Jednak operacje określone w interfejsie OpenAPI można zarządzać oddzielnie w usłudze API Management.

Wymagania wstępne

Przechodzenie do wystąpienia usługi API Management

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Usługi API Management.

    Wybieranie usług API Management

  2. Na stronie Usługi API Management wybierz wystąpienie usługi API Management.

    Wybieranie wystąpienia usługi API Management

Importowanie i publikowanie interfejsu API zaplecza

Napiwek

Poniższe kroki umożliwiają rozpoczęcie importowania przy użyciu usługi Azure API Management w witrynie Azure Portal. Możesz również połączyć się z usługą API Management bezpośrednio z poziomu aplikacji internetowej, wybierając pozycję API Management z menu interfejsu API aplikacji.

  1. Przejdź do usługi API Management w witrynie Azure Portal i wybierz z menu pozycję Interfejsy API.

  2. Wybierz pozycję App Service z listy.

    Tworzenie na podstawie usługi App Service

  3. Wybierz pozycję Przeglądaj , aby wyświetlić listę usług App Services w ramach subskrypcji.

  4. Wybierz usługę App Service. Jeśli definicja interfejsu OpenAPI jest skojarzona z wybraną aplikacją internetową, usługa API Management pobiera ją i importuje.

    Jeśli definicja interfejsu OpenAPI nie zostanie znaleziona, usługa API Management uwidacznia interfejs API, generując operacje symboli wieloznacznych dla typowych czasowników HTTP.

  5. Dodaj sufiks adresu URL interfejsu API. Sufiks to nazwa, która identyfikuje dany interfejs API w tym wystąpieniu usługi API Management. Musi ona być unikatowa w tym wystąpieniu usługi APIM.

  6. Opublikuj interfejs API przez skojarzenie go z produktem. W takim przypadku jest używany produkt typu „Nieograniczony”. Jeśli chcesz, aby interfejs API został opublikowany i dostępny dla deweloperów, dodaj go do produktu. Możesz to zrobić podczas tworzenia interfejsu API lub ustawić tę opcję później.

    Uwaga

    Produkty to skojarzenia co najmniej jednego interfejsu API. Możesz dołączyć wiele interfejsów API i oferować je deweloperom za pośrednictwem portalu dla deweloperów. Przed uzyskaniem dostępu do interfejsu API deweloperzy muszą najpierw zasubskrybować produkt. Podczas subskrybowania otrzymują oni klucz subskrypcji działający dla każdego interfejsu API w tym produkcie. Jeśli utworzono wystąpienie usługi APIM, oznacza to, że użytkownik jest już administratorem, więc domyślnie posiada subskrypcję każdego produktu.

    Domyślnie każde wystąpienie usługi API Management zawiera dwa produkty przykładowe:

    • Starter (początkowy)
    • Unlimited (nieograniczony)
  7. Wprowadź inne ustawienia interfejsu API. Wartości można ustawić podczas tworzenia lub skonfigurować później, przechodząc do karty Ustawienia. Ustawienia zostały wyjaśnione w samouczku Importowanie i publikowanie pierwszego interfejsu API.

  8. Wybierz pozycję Utwórz. Tworzenie interfejsu API z poziomu usługi App Service

Testowanie nowego interfejsu API w witrynie Azure Portal

Operacje mogą być wywoływane bezpośrednio z witryny Azure Portal, która zapewnia wygodny sposób wyświetlania i testowania operacji interfejsu API. Interfejs API można również przetestować w portalu dla deweloperów lub przy użyciu własnych narzędzi klienckich REST.

  1. Wybierz interfejs API utworzony w poprzednim kroku.

  2. Wybierz kartę Test.

  3. Wybierz operację.

    Na stronie zostaną wyświetlone pola parametrów zapytania i pola nagłówków. Jeden z nagłówków to „Ocp-Apim-Subscription-Key” dla klucza subskrypcji produktu, który został skojarzony z tym interfejsem API. Jeśli utworzono wystąpienie API Management, oznacza to, że już jesteś administratorem, więc klucz zostanie uzupełniony automatycznie.

  4. Kliknij pozycję Wyślij.

    Po pomyślnym zakończeniu testu zaplecze odpowiada za pomocą wartości 200 OK i niektórych danych.

Testowanie operacji symboli wieloznacznych w portalu

Po wygenerowaniu operacji z symbolami wieloznacznymi operacje mogą nie być mapowane bezpośrednio do interfejsu API zaplecza. Na przykład wieloznaczne operacje GET zaimportowane w usłudze API Management domyślnie używają ścieżki / . Jednak interfejs API zaplecza może obsługiwać operację GET w następującej ścieżce:

/api/TodoItems

Możesz przetestować ścieżkę /api/TodoItems w następujący sposób.

  1. Wybierz utworzony interfejs API i wybierz operację.

  2. Wybierz kartę Test.

  3. W obszarze Parametry szablonu zaktualizuj wartość obok nazwy symbolu wieloznakowego (*). Na przykład wprowadź api/TodoItems. Ta wartość jest dołączana do ścieżki / dla operacji z symbolami wieloznacznymi.

    Testowanie operacji symboli wieloznacznych

  4. Wybierz Wyślij.

Dołączanie innych interfejsów API

Możesz utworzyć interfejs API interfejsów API udostępnianych przez różne usługi, w tym:

  • Specyfikacja interfejsu OpenAPI
  • Interfejs API PROTOKOŁU SOAP
  • Interfejs API graphQL
  • Aplikacja internetowa hostowana w usłudze aplikacja systemu Azure
  • Aplikacja funkcji platformy Azure
  • Azure Logic Apps
  • Azure Service Fabric

Dołącz inny interfejs API do istniejącego interfejsu API, wykonując następujące kroki.

Uwaga

Po zaimportowaniu innego interfejsu API operacje są dołączane do bieżącego interfejsu API.

  1. Przejdź do wystąpienia Azure API Management w Azure Portal.

    Przejdź do wystąpienia narzędzia Mgmt interfejsu API platformy Azure

  2. Wybierz pozycję Interfejsy API na stronie Przegląd lub z menu po lewej stronie.

    Wybierz interfejsy API

  3. Kliknij przycisk ... obok interfejsu API, który chcesz dołączyć do innego interfejsu API.

  4. Z menu rozwijanego wybierz pozycję Importuj.

    Wybieranie opcji importu

  5. Wybierz usługę, z której chcesz zaimportować interfejs API.

    Wybieranie usługi

Następne kroki