Exercício – Criar uma nova API na Gestão de API a partir de uma aplicação de funções

Concluído

Para apresentar o Azure Functions aos usuários como partes de uma única API, você pode adicioná-los ao Gerenciamento de API do Azure.

Na empresa da sua loja online, os programadores criaram várias Funções do Azure como microsserviços. Cada função implementa uma pequena parte da funcionalidade da loja. Você deseja montar essas funções em uma única API.

Neste exercício, você cria uma nova instância de Gerenciamento de API e adiciona uma função Detalhes do Produto a ela.

Criar funções

Nas etapas a seguir, você adiciona um aplicativo do Azure Function ao Gerenciamento de API do Azure. Mais tarde, você adiciona um segundo aplicativo de função à mesma instância de Gerenciamento de API para criar uma única API sem servidor a partir de várias funções. Vamos começar por utilizar um script para criar as funções:

  1. Para clonar o projeto de funções, execute o seguinte comando no Azure Cloud Shell à direita.

    git clone https://github.com/MicrosoftDocs/mslearn-apim-and-functions.git ~/OnlineStoreFuncs
    
  2. Execute os seguintes comandos no Cloud Shell para configurar os recursos necessários do Azure necessários para este exercício.

    cd ~/OnlineStoreFuncs
    bash setup.sh
    

    O setup.sh script cria os dois aplicativos de função no grupo de recursos de área restrita que são ativados para este módulo. Como ilustra o gráfico seguinte, cada aplicação aloja uma única função – OrderDetails e ProductDetails. O script também configura uma conta de armazenamento para as funções. As duas funções têm URLs no domínio azurewebsites.net. Os nomes de função incluem números aleatórios para exclusividade. O processamento do script demora alguns minutos.

    Diagram illustrating the results of the setup.sh script and how the functions relate to the overall application's design.

Testar a função ProductDetails

Agora, vamos testar a função ProductDetails para ver como ela se comporta antes de adicioná-la ao Gerenciamento de API.

  1. Inicie sessão no portal do Azure com a mesma conta que utilizou para ativar o sandbox.

  2. No menu do portal do Azure ou a partir da Home Page, selecione Todos os recursos. O painel Todos os recursos é exibido.

  3. Selecione o aplicativo de função cujo nome começa com ProductFunction. O painel Aplicativo de função aparece com a guia Visão geral selecionada.

    Screenshot of menu selections to open ProductDetails function.

  4. Na lista de funções do seu aplicativo de funções, selecione ProductDetails. O painel Função ProductDetails é exibido.

  5. No menu Detalhes do produto, em Desenvolvedor, selecione Código + Teste. O painel Código + Teste para a função ProductDetails é exibido, mostrando o conteúdo do function.json arquivo.

    Screenshot of the ProductDetails Code and Test pane, with Test/Run selected in the command bar.

  6. Na barra de comandos, selecione Testar/Executar. O painel Entrada/Saída é exibido para testar sua solicitação HTTP.

  7. Na guia Entrada, na lista suspensa do campo Método HTTP, selecione GET.

  8. Em Consulta, selecione Adicionar parâmetro

  9. No campo Nome, insira id e, no campo Valor, digite 3 e selecione Executar.

    Screenshot of the input pane for Test + Run, with the input parameter for the HTTP GET method highlighted.

  10. Um painel de log aparece para conectar a solicitação. A guia Saída exibe o código de resposta HTTP (200 OK) e o conteúdo do item 3 no banco de dados.

    Screenshot of the output of a pane for Test + Run with response results of running the GET method.

    Opcionalmente, você também pode testar a função inserindo valores de ID 1 e 2.

  11. Selecione Fechar para fechar as guias Entrada e Saída para Código + Teste.

  12. Na barra de comandos do painel ProductDetails Code + Test, selecione Obter URL da função. Observe que o subdomínio URL é o nome do seu aplicativo de função, seguido pelo domínio azurewebsites.net .

Nota

Pode utilizar este URL para testar a função no browser. O URL requer uma entrada; Anexe a cadeia de caracteres de consulta para solicitar detalhes sobre o primeiro item da sua coleção de &id=1 produtos.

Expor o aplicativo de função como uma API usando o Gerenciamento de API do Azure

Depois que o aplicativo de função for implantado e testado, vamos exportá-lo como uma API usando o Gerenciamento de API do Azure para que possa ser chamado de outros aplicativos e serviços.

  1. No menu de recursos, selecione Todos os recursos. O painel Todos os recursos é exibido.

  2. Ordene a lista de recursos por tipo. Observe que você tem um aplicativo OrderFunction e um aplicativo ProductFunction.

  3. Selecione o aplicativo de função ProductFunction .

  4. No menu Aplicativo de função, role até a categoria API e selecione Gerenciamento de API. O painel Gerenciamento de API para o aplicativo de função ProductFunction é exibido.

    Screenshot showing menu selection to open the API Management app service.

  5. No campo Gerenciamento de API, selecione Criar novo. O painel Instalar gateway de Gerenciamento de API é exibido.

    Screenshot showing settings for an API Management service.

  6. Insira os seguintes valores para cada configuração.

    Definição valor
    Subscrição Subscrição de Assistente
    Grupo de recursos [nome do grupo de recursos do sandbox]
    Região Escolha um local que suporte o Plano de Consumo: (EUA) Oeste dos EUA, Centro-Norte dos EUA, Europa Ocidental, Europa do Norte, Sudeste Asiático, Leste da Austrália
    Nome do recurso OnlineStore
    Nome da organização OnlineStore
    E-mail do administrador Insira um endereço de e-mail.
    Escalão de preço Consumo (SLA 99,95%)
  7. Selecione Next: Monitoring e desmarque a opção Application Insights .

  8. Selecione Rever + Criar. Quando a validação for concluída, selecione Criar para criar uma instância de Gerenciamento de API vinculada. Aguarde alguns minutos para que a exportação seja concluída.

  9. Quando a instância de Gerenciamento de API for implantada, selecione Vincular API.

    Screenshot of API Management highlighting the Link API button.

    O painel de serviço Importar Gerenciamento de API do Azure Functions aparece com a função ProductDetails realçada.

    Screenshot showing the Import Azure Functions API Management service pane.

  10. Selecione Selecionar para continuar. A caixa de diálogo Criar a partir do aplicativo de função é exibida.

    Screenshot showing the Create from Function app dialog box.

  11. Altere o valor do sufixo de URL da API para produtos e selecione Criar. O Azure cria a API para a função ProductDetails . A guia Design para o painel Gerenciamento de API para seu aplicativo de função é exibida.

Este exercício mostra que você pode definir sua API, tudo de dentro do serviço Aplicativo de Função do Azure.

Testar o ponto final dos produtos da OnlineStore

Agora você tem uma ProductDetails API na instância de Gerenciamento de API que criou. Vamos testar essa API com as ferramentas de Gerenciamento de API no Azure.

  1. No painel Gerenciamento de API do seu aplicativo de função, selecione a guia Teste. As operações disponíveis para sua API aparecem na coluna da esquerda.

  2. Selecione GET ProductDetails. O painel Console ProductDetails é exibido.

  3. Em Parâmetros de consulta, selecione Adicionar parâmetro.

    Screenshot showing ProductDetails Console with query parameter values highlighted for the GET HTTP request.

  4. No campo NOME, insira id e, no campo VALOR, digite 1 e selecione Enviar para gerar uma solicitação GET.

    A seção de resposta HTTP do console tem duas guias, Mensagem e Rastreamento. A guia Mensagem é preenchida com a resposta HTTP. Os detalhes do produto aparecem no formato JSON no final da resposta. Role para cima até a seção de solicitação HTTP e observe o formato da solicitação . A solicitação foi enviada para um destino no domínio azure-api.net. Esse local é diferente do domínio azurewebsites.net onde o aplicativo de função está hospedado. Você pode testar essa API com outros parâmetros de consulta, como id=2 ou id=3.

    Screenshot showing the **Http request** and **HTTP response** message.