Importar um Aplicativo Web do Azure como uma API

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

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

Nota

Você pode usar a extensão de gerenciamento de API para Visual Studio Code para importar e gerenciar suas APIs. Siga o tutorial API Management Extension para instalar e começar.

Neste artigo, vai aprender a:

  • Importar um Aplicativo Web hospedado no Serviço de Aplicativo
  • Testar a API no Portal do Azure

Exponha o aplicativo Web com o gerenciamento de API

O Serviço de Aplicativo do Azure é um serviço baseado em HTTP para hospedar aplicativos Web, APIs REST e back-ends móveis. Os desenvolvedores de API podem usar suas pilhas e pipelines de tecnologia preferidos para desenvolver APIs e publicar seus back-ends de API como Aplicativos Web em um ambiente seguro e escalável. Em seguida, use o Gerenciamento de API para expor os aplicativos Web, gerenciar e proteger as APIs durante todo o ciclo de vida e publicá-las para os consumidores.

O Gerenciamento de API é o ambiente recomendado para expor uma API hospedada no Web App, por vários motivos:

  • Desacople o gerenciamento e a proteção do front-end exposto aos consumidores de API do gerenciamento e monitoramento do aplicativo Web de back-end
  • Gerencie APIs da Web hospedadas como Aplicativos Web 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 Web hospedados no Serviço de Aplicativo que incluem uma especificação OpenAPI (definição Swagger). No entanto, não é necessária nenhuma especificação OpenAPI.

  • Se a Aplicação Web tiver uma especificação OpenAPI configurada numa definição de API, a Gestão de API criará operações de API que mapeiam diretamente para a definição, incluindo caminhos, parâmetros e tipos de resposta necessários.

    Ter uma especificação OpenAPI é recomendado, porque a API é importada para o Gerenciamento de API com alta fidelidade, dando-lhe flexibilidade para validar, gerenciar, proteger e atualizar configurações para cada operação separadamente.

  • 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). Acrescente um caminho ou os parâmetros necessários à operação com carateres universais para transmitir um pedido de API para a API de back-end.

    Com operações curinga, 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 detalhe por padrão. Em ambos os casos, você pode editar ou adicionar operações à API importada.

Exemplo

Seu aplicativo Web de back-end pode suportar duas operações GET:

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

Você importa o aplicativo Web para seu serviço de gerenciamento de API em um caminho como https://contosoapi.azureapi.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.azureapi.net/store/customer/1

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

GET https://contosoapi.azureapi.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

Gorjeta

As etapas a seguir iniciam a importação usando o Gerenciamento de API do Azure no portal do Azure. Você também pode vincular ao Gerenciamento de API diretamente do seu aplicativo Web, selecionando Gerenciamento de API no menu API do aplicativo.

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

  2. Selecione Serviço de Aplicativo na lista.

    Criar a partir do Serviço de Aplicativo

  3. Selecione Procurar para ver a lista de Serviços de Aplicações na sua subscrição.

  4. Selecione um Serviço de Aplicativo. Se uma definição de OpenAPI estiver associada ao aplicativo Web 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. Tem de ser exclusivo nesta instância de APIM.

  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. Pode fazê-lo durante a criação da API ou defini-lo mais tarde.

    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 tiver criado a instância APIM, já é um administrador, pelo que tem todos os produtos subscritos por predefinição.

    Por predefinição, cada instância daAPI Management é fornecida com dois produtos de exemplo:

    • 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 Serviço de Aplicativo

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 que está 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