Partilhar via


Importar um aplicativo de contêiner do Azure como uma API

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

Este artigo descreve como importar um aplicativo de contêiner do Azure para o Gerenciamento de API do Azure como uma API 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 um aplicativo de contêiner usando 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 com 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.

Ao usar o Gerenciamento de API para expor uma API da Web hospedada em um aplicativo de contêiner, você obtém os seguintes benefícios:

  • Desacople a gestão e a proteção do frontend exposto aos utilizadores da API da gestão e monitorização da API de back-end.
  • Gerencie APIs da Web hospedadas como aplicativos de contêiner no mesmo ambiente que suas outras APIs.
  • Aplique políticas para alterar o comportamento da API, como a limitação da taxa de chamadas.
  • Direcione os consumidores de API para o portal do desenvolvedor personalizável do Gerenciamento de API para que eles possam descobrir e aprender sobre suas APIs, solicitar acesso e experimentar APIs.

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

Especificação OpenAPI vs. operações curinga

O Gerenciamento de API oferece suporte à importação de aplicativos de contêiner que fornecem uma especificação OpenAPI (uma definição Swagger). Uma especificação OpenAPI não é necessária, mas recomendamos que você forneça uma. O Gerenciamento de API pode importar operações individuais, o que permite 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 contêiner
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Se uma especificação OpenAPI não for fornecida, a Gestão 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 depois de importá-la.

Exemplo

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

  • https://<app-service>.azurewebsites.net/customer/{id}
  • https://<app-service>.azurewebsites.net/customers

Você importa o aplicativo de contêiner para seu serviço de Gerenciamento de API em um caminho como https://<api>.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:

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

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

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

GET https://<api>.azure-api.net/store/customers

A operação wildcard permite as mesmas solicitações ao 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

Importar e publicar uma API de back-end

  1. Navegue até ao serviço de Gestão de API no portal do Azure e selecione APIs>APIs no painel esquerdo.

  2. Em Criar a partir do recurso do Azure, selecione Aplicativo de contêiner:

    Captura de ecrã que mostra o ícone da aplicação de contentor.

  3. Selecione Procurar para ver uma 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 da API. O sufixo é um nome que identifica a API na instância de Gerenciamento de API. Ele deve ser exclusivo na instância de Gerenciamento de API.

  6. Associe a API a um produto. Selecione Completo e, em seguida, em Produto, selecione o produto. Neste caso, é utilizado o produto Unlimited . Se quiser que a API seja publicada e esteja disponível para desenvolvedores, você precisa adicioná-la a um produto.

    Nota

    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 se inscrevem, recebem uma chave de subscrição que é boa para qualquer API desse produto. Se você criou a instância de Gerenciamento de API, é um administrador e se inscreveu em todos os produtos por padrão.

    Em alguns níveis de preços, uma instância de Gerenciamento de API vem com dois produtos de exemplo quando você a cria:

    • Inicio
    • Ilimitado
  7. Insira outras configurações da API. Você pode definir esses valores ao criar a API ou configurá-los posteriormente na guia Configurações . Essas configurações são explicadas no tutorial Importar e publicar sua primeira API .

  8. Selecione Criar.

    Captura de tela que mostra a janela Criar a partir do aplicativo de contêiner.

Testar a nova API no portal do Azure

Você pode chamar operações diretamente do portal do Azure. Esse método é uma maneira conveniente de exibir 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.

Para testar a API no portal do Azure:

  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. Esse cabeçalho é para a chave de assinatura do produto associado à API. Se criou a instância de gestão de API, é um administrador, então a chave é preenchida automaticamente.

  4. Selecione Enviar.

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

Testar a operação de wildcard no portal

Quando as operações wildcard são geradas, as operações podem não ser mapeadas diretamente para a API de back-end. Por exemplo, uma operação GET com curinga importada na Gestão de API utiliza 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

Para testar o /api/TodoItems caminho:

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

  2. Selecione o separador Teste.

  3. Em Parâmetros do Modelo, atualize o valor ao lado do nome do wildcard (*). Por exemplo, introduza api/TodoItems. Este valor é acrescentado ao caminho / para a operação coringa.

    Captura de tela que mostra as etapas para testar a operação curinga.

  4. Selecione Enviar.

Anexar outras APIs

Você pode compor uma API a partir de APIs que são expostas por diferentes serviços, incluindo:

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

Nota

Quando você importa uma API, as operações são anexadas à sua API atual.

Para acrescentar uma API a uma API existente:

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

    Captura de tela que mostra a página de serviços de Gerenciamento de API.

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

    Captura de tela que mostra a seleção de APIs na página Visão geral.

  3. Selecione as reticências (...) ao lado da API à qual deseja acrescentar outra API.

  4. Selecione Importar no menu deslizante:

    Captura de tela que mostra o comando Importar.

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