Importar um Aplicativo de Contêiner do Azure como uma API

APLICA-SE A: Todas as camadas de gerenciamento de API

Este artigo mostra como importar um Aplicativo de Contêiner do Azure para o Gerenciamento de API do Azure e testar a API importada usando o portal do Azure.

Nota

Atualmente, esse recurso não está disponível em espaços de trabalho.

Neste artigo, vai aprender a:

  • Importar um aplicativo de contêiner que expõe uma API da Web
  • Testar a API no Portal do Azure

Expor o aplicativo de contêiner com o gerenciamento de API

Os Aplicativos de Contêiner do Azure permitem que você implante aplicativos em contêineres sem gerenciar uma infraestrutura complexa. Os desenvolvedores de API podem escrever código usando sua linguagem de programação ou estrutura preferida, criar microsserviços com suporte total para Distributed Application Runtime (Dapr) e dimensionar com base no tráfego HTTP ou outros eventos.

O Gerenciamento de API é o ambiente recomendado para expor uma API da Web hospedada no Aplicativo de Contêiner, por vários motivos:

  • Desacople o gerenciamento e a proteção do front-end exposto aos consumidores de API do gerenciamento e monitoramento da API da Web de back-end
  • Gerencie APIs da Web hospedadas como Aplicativos de Contêiner no mesmo ambiente que suas outras APIs
  • Aplicar políticas para alterar o comportamento da API, como limitação da taxa de chamadas
  • Direcione os consumidores de API para o portal do desenvolvedor personalizável do Gerenciamento de API para descobrir e aprender sobre suas APIs, solicitar acesso e experimentá-las

Para obter mais informações, consulte Sobre o gerenciamento de API.

Especificação OpenAPI versus operações curinga

O Gerenciamento de API suporta a importação de Aplicativos de Contêiner que fornecem uma especificação OpenAPI (definição Swagger). No entanto, não é necessária nenhuma especificação OpenAPI. Recomendamos fornecer uma especificação OpenAPI. O Gerenciamento de API pode importar operações individuais, permitindo validar, gerenciar, proteger e atualizar configurações para cada operação separadamente.

Se o Aplicativo de Contêiner expõe uma especificação OpenAPI, o Gerenciamento de API cria operações de API que são mapeadas diretamente para a definição. O Gerenciamento de API procurará em vários locais uma especificação OpenAPI

  • A configuração do aplicativo de contêiner.
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Se uma especificação OpenAPI não for fornecida, o Gerenciamento de API gerará operações curinga para os verbos HTTP comuns (GET, PUT e assim por diante). Você ainda pode aproveitar os mesmos recursos de Gerenciamento de API, mas as operações não são definidas no mesmo nível de detalhes.

Em ambos os casos, você pode editar ou adicionar operações à API após a importação.

Exemplo

Seu aplicativo de contêiner de back-end pode suportar duas operações GET:

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

Você importa o aplicativo de contêiner para seu serviço de gerenciamento de API em um caminho como https://contosoapi.azure-api.net/store. A tabela a seguir mostra as operações que são importadas para o Gerenciamento de API, com ou sem uma especificação OpenAPI:

Type Operações importadas Pedidos de amostra
Especificação de OpenAPI GET /customer/{id}

GET /customers
GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers
Caráter universal GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers

A operação curinga permite as mesmas solicitações para o serviço de back-end que as operações na especificação OpenAPI. No entanto, as operações especificadas pela OpenAPI podem ser gerenciadas separadamente no Gerenciamento de API.

Pré-requisitos

Vá para a sua instância de Gestão de API

  1. No portal do Azure, procure e selecione serviços de Gerenciamento de API.

    Selecionar serviços de gerenciamento de API

  2. Na página Serviços de Gerenciamento de API, selecione sua instância de Gerenciamento de API.

    Selecione sua instância de Gerenciamento de API

Importar e publicar uma API de back-end

  1. Navegue até o serviço de Gerenciamento de API no portal do Azure e selecione APIs no menu.

  2. Selecione Aplicativo de contêiner na lista.

    Criar a partir do aplicativo de contêiner

  3. Selecione Procurar para ver a lista de Aplicativos de contêiner em sua assinatura.

  4. Selecione um aplicativo de contêiner. Se uma definição de OpenAPI estiver associada ao Aplicativo de Contêiner selecionado, o Gerenciamento de API a buscará e a importará. Se uma definição de OpenAPI não for encontrada, o Gerenciamento de API expõe a API gerando operações curinga para verbos HTTP comuns.

  5. Adicione um sufixo de URL de API. O sufixo é um nome que identifica esta API específica nesta instância de Gestão de API. Ele deve ser exclusivo nesta instância de Gerenciamento de API.

  6. Publique a API ao associá-la a um produto. Neste caso, é utilizado o produto "Unlimited". Se você quiser que a API seja publicada e esteja disponível para desenvolvedores, adicione-a a um produto.

    Nota

    Os produtos são associações de uma ou mais APIs. Pode incluir muitas APIs e oferecê-las aos programadores através do portal do programador. Os programadores têm de subscrever primeiro um produto para obter acesso à API. Quando subscrevem, recebem uma chave de subscrição que é válida para qualquer API nesse produto. Se você criou a instância de Gerenciamento de API, é um administrador e se inscreveu em todos os produtos por padrão.

    Cada instância de Gerenciamento de API vem com dois produtos de exemplo quando criados:

    • Inicial
    • Ilimitado
  7. Insira outras configurações da API. Você pode definir os valores durante a criação ou configurá-los mais tarde, indo para a guia Configurações . As configurações são explicadas no tutorial Importar e publicar sua primeira API .

  8. Selecione Criar.

    Criar API a partir do aplicativo de contêiner

Testar a nova API no portal do Azure

As operações podem ser chamadas diretamente a partir do Portal do Azure, que fornece um meio cómodo para ver e testar as operações de uma API. Você também pode testar a API no portal do desenvolvedor ou usando suas próprias ferramentas de cliente REST.

  1. Selecione a API que criou no passo anterior.

  2. Selecione o separador Teste.

  3. Selecione uma operação.

    A página apresenta campos para os parâmetros de consulta e campos para os cabeçalhos. Um dos cabeçalhos é Ocp-Apim-Subscription-Key, para a chave de subscrição do produto associado a esta API. Se tiver criado a instância de Gestão de API, já é um administrador, pelo que a chave é preenchida automaticamente.

  4. Prima Enviar.

    Quando o teste é bem-sucedido, o back-end responde com 200 OK e alguns dados.

Testar a operação curinga no portal

Quando as operações curinga são geradas, as operações podem não ser mapeadas diretamente para a API de back-end. Por exemplo, uma operação GET curinga importada no Gerenciamento de API usa o caminho / por padrão. No entanto, sua API de back-end pode oferecer suporte a uma operação GET no seguinte caminho:

/api/TodoItems

Você pode testar o caminho /api/TodoItems da seguinte maneira.

  1. Selecione a API que você criou e selecione a operação.

  2. Selecione o separador Teste.

  3. Em Parâmetros do modelo, atualize o valor ao lado do nome do curinga (*). Por exemplo, introduza api/TodoItems. Esse valor é anexado ao caminho / para a operação curinga.

    Testar operação curinga

  4. Selecione Enviar.

Anexar outras APIs

Você pode compor uma API de APIs expostas por diferentes serviços, incluindo:

  • Uma especificação OpenAPI
  • UMA API SOAP
  • Uma API GraphQL
  • Um Aplicativo Web hospedado no Serviço de Aplicativo do Azure
  • Aplicação de Função do Azure
  • Azure Logic Apps
  • Azure Service Fabric

Anexe uma API diferente à sua API existente usando as etapas a seguir.

Nota

Quando importar outra API, as operações são anexadas à API atual.

  1. Aceda à sua instância de API Management do Azure no portal do Azure.

    Ir para a instância do Azure API Mgmt

  2. Selecione APIs na página Visão geral ou no menu à esquerda.

    Selecionar APIs

  3. Clique em ... junto à API à qual quer anexar outra API.

  4. Selecione Importar no menu pendente.

    Selecione Importar

  5. Selecione um serviço a partir do qual quer importar uma API.

    Selecionar serviço

Próximos passos