Importar um Aplicativo de Contêiner do Azure como API

APLICA-SE A: todas as camadas do 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. Neste artigo, você aprenderá como:

  • Importar um Aplicativo de Contêiner que expõe uma API 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 implantar aplicativos conteinerizados sem gerenciar uma infraestrutura complexa. Os desenvolvedores de API podem gravar o código usando a linguagem de programação ou estrutura preferencial, criar microsserviços com suporte total para Dapr (Distributed Application Runtime) e escalar com base no tráfego HTTP ou em outros eventos.

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

  • Desacoplar o gerenciamento e a proteção do front-end exposto aos consumidores da API do gerenciamento e monitoramento da API Web de back-end
  • Gerenciar APIs 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 de taxa de chamada
  • Direcionar consumidores de API ao 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, confira Sobre o Gerenciamento de API.

Especificação do OpenAPI versus operações curinga

O Gerenciamento de API dá suporte à importação de Aplicativos de Contêiner que fornecem uma especificação de OpenAPI (definição do Swagger). No entanto, uma especificação de OpenAPI não é necessária. É recomendável fornecer uma especificação de OpenAPI. O Gerenciamento de API pode importar operações individuais, permitindo que você valide, gerencie, proteja e atualize as configurações de cada operação separadamente.

Se o Aplicativo de Contêiner expuser uma especificação de OpenAPI, o Gerenciamento de API criará operações de API que mapeiam diretamente até a definição. O Gerenciamento de API procurará em vários locais para uma Especificação de 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 vai 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 dar suporte a duas operações GET:

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

Importe o Aplicativo de Contêiner para seu serviço de Gerenciamento de API em um caminho como https://contosoapi.azure-api.net/store. A seguinte tabela mostra as operações importadas para o Gerenciamento de API, com ou sem uma especificação OpenAPI:

Tipo Operações importadas Solicitações de exemplo
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
Curinga 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-back que as operações na especificação OpenAPI. No entanto, as operações especificadas por OpenAPI podem ser gerenciadas separadamente no Gerenciamento de API.

Pré-requisitos

Navegar até a instância de Gerenciamento de API

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

    Selecione Serviços de Gerenciamento de API

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

    Selecione a 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 no 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 do 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 exporá a API gerando operações curinga para verbos HTTP comuns.

  5. Adicione um sufixo da URL da API. O sufixo é um nome que identifica a API específica messa instância do Gerenciamento de API. Ele deve ser exclusivo nessa instância do Gerenciamento de API.

  6. Publica a API associando-a a um produto. Nesse caso, o produto "Ilimitado" é usado. Se você deseja que a API seja publicada e fique disponível para os desenvolvedores, adicione-a a um produto.

    Observação

    Os produtos são associações de uma ou mais APIs. Você pode incluir muitas APIs e oferecê-las aos desenvolvedores no portal do desenvolvedor. Os Desenvolvedores devem primeiro se inscrever em um produto para obter acesso à API. Com a assinatura, eles obtêm uma chave de assinatura que funciona para qualquer API no produto. Se você criou a instância do Gerenciamento de API, você é um administrador e está inscrito em cada produto, por padrão.

    Cada instância de Gerenciamento de API é fornecida com dois produtos de amostra quando criada:

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

  8. Selecione Criar.

    Criar API no Aplicativo de Contêiner

Testar a nova API no portal do Azure

As operações podem ser chamadas diretamente do portal do Azure, o que oferece uma maneira fácil de exibir e testar as operações de uma API. Você também pode testar a API no portal do desenvolvedor ou usando as próprias ferramentas de cliente REST.

  1. Selecione a API que você criou na etapa anterior.

  2. Selecione a guia Testar.

  3. Selecione uma operação.

    A página exibe os campos dos parâmetros de consulta e os campos dos cabeçalhos. Um dos cabeçalhos é Ocp-Apim-Subscription-Key, para a chave de assinatura do produto que está associada a essa API. Se você criou a instância do Gerenciamento de API, já é um administrador e, portanto, a chave é preenchida automaticamente.

  4. Pressione Enviar.

    Quando a solicitação for realizada com sucesso, o back-end responderá com 200 OK e alguns dados.

Testar operação curinga no portal

Quando 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 dar suporte a uma operação GET no seguinte caminho:

/api/TodoItems

Você pode testar o caminho /api/TodoItems da forma a seguir.

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

  2. Selecione a guia Testar.

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

    Testar operação curinga

  4. Selecione Enviar.

Acrescentar outras APIs

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

  • Uma especificação do OpenAPI
  • Uma API SOAP
  • Uma API da GraphQL
  • Um aplicativo Web hospedado no Serviço de Aplicativo do Azure
  • Aplicativo de Funções do Azure
  • Aplicativos Lógicos do Azure
  • Azure Service Fabric

Acrescente uma API diferente da API existente usando as etapas a seguir.

Observação

Ao importar outra API, as operações são acrescentadas à sua API atual.

  1. Vá para sua instância de Gerenciamento de API do Azure no portal do Azure.

    Acessar a instância do Gerenciamento de API do Azure

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

    Selecionar APIs

  3. Clique em ... ao lado da API à qual você deseja acrescentar outra API.

  4. Selecione Importar no menu suspenso.

    Selecionar Importar

  5. Selecione um serviço de onde será importada a API.

    Selecione o serviço

Próximas etapas