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
- Conclua o guia de início rápido seguinte: Criar uma instância da Gestão de API do Azure.
- Verifique se há um aplicativo de contêiner que expõe uma API da Web em sua assinatura. Para obter mais informações, consulte a documentação de aplicativos de contêiner.
Vá para a sua instância de Gestão de API
No portal do Azure, procure e selecione serviços de Gerenciamento de API.
Na página Serviços de Gerenciamento de API, selecione sua instância de Gerenciamento de API.
Importar e publicar uma API de back-end
Navegue até o serviço de Gerenciamento de API no portal do Azure e selecione APIs no menu.
Selecione Aplicativo de contêiner na lista.
Selecione Procurar para ver a lista de Aplicativos de contêiner em sua assinatura.
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.
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.
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
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 .
Selecione Criar.
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.
Selecione a API que criou no passo anterior.
Selecione o separador Teste.
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.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.
Selecione a API que você criou e selecione a operação.
Selecione o separador Teste.
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.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.
Aceda à sua instância de API Management do Azure no portal do Azure.
Selecione APIs na página Visão geral ou no menu à esquerda.
Clique em ... junto à API à qual quer anexar outra API.
Selecione Importar no menu pendente.
Selecione um serviço a partir do qual quer importar uma API.
Tópicos relacionados
- Limitações de importação de API
- Importar uma especificação de OpenAPI
- Importar uma API SOAP
- Importar uma API de SOAP e converter em REST
- Importar uma API do Serviço de Aplicativo
- Importar uma API de aplicativo de contêiner
- Importar uma API WebSocket
- Importar uma GraphQL API
- Importar um esquema de GraphQL e configurar resoluções de campos
- Importar uma Aplicação de Função do Azure
- Importar uma Aplicação Lógica do Azure
- Importar um serviço do Service Fabric
- Importar uma API OpenAI do Azure
- Importar uma API OData
- Importar metadados do SAP OData
- Importar uma API gRPC
- Editar uma API