Exercício – Criar uma nova API na Gestão de API a partir de uma aplicação de funções
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:
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
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
eProductDetails
. 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.
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.
Inicie sessão no portal do Azure com a mesma conta que utilizou para ativar o sandbox.
No menu do portal do Azure ou a partir da Home Page, selecione Todos os recursos. O painel Todos os recursos é exibido.
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.
Na lista de funções do seu aplicativo de funções, selecione ProductDetails. O painel Função ProductDetails é exibido.
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.Na barra de comandos, selecione Testar/Executar. O painel Entrada/Saída é exibido para testar sua solicitação HTTP.
Na guia Entrada, na lista suspensa do campo Método HTTP, selecione GET.
Em Consulta, selecione Adicionar parâmetro
No campo Nome, insira id e, no campo Valor, digite 3 e selecione Executar.
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.
Opcionalmente, você também pode testar a função inserindo valores de ID 1 e 2.
Selecione Fechar para fechar as guias Entrada e Saída para Código + Teste.
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 &id=1
de consulta para solicitar detalhes sobre o primeiro item da sua coleção de 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.
No menu de recursos, selecione Todos os recursos. O painel Todos os recursos é exibido.
Ordene a lista de recursos por tipo. Observe que você tem um aplicativo OrderFunction e um aplicativo ProductFunction.
Selecione o aplicativo de função ProductFunction .
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.
No campo Gerenciamento de API, selecione Criar novo. O painel Instalar gateway de Gerenciamento de API é exibido.
Insira os seguintes valores para cada configuração.
Definição Value Subscrição Subscrição de Assistente Grupo de recursos [nome do grupo de recursos do sandbox] País/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%) Selecione Next: Monitoring e desmarque a opção Application Insights .
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.
Quando a instância de Gerenciamento de API for implantada, selecione Vincular API.
O painel de serviço Importar Gerenciamento de API do Azure Functions aparece com a função ProductDetails realçada.
Selecione Selecionar para continuar. A caixa de diálogo Criar a partir do aplicativo de função é exibida.
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.
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.
Selecione GET ProductDetails. O painel Console ProductDetails é exibido.
Em Parâmetros de consulta, selecione Adicionar parâmetro.
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.