Exercício - Criar um aplicativo do Azure Functions e refatorar o código

Concluído

Neste exercício, você cria um aplicativo do Azure Functions sem servidor que executa as APIs em vez do aplicativo Express. Em seguida, você migra a lógica do aplicativo do Node.js Express para o aplicativo Functions. Não é necessário reescrever o código. Você precisa apenas de algumas pequenas alterações de código para fazer a transição.

Criar um novo aplicativo do Azure Functions

Verifique se você tem a extensão de código do Visual Studio para Azure Functions instalada.

  1. No Visual Studio Code, abra a paleta de comandos ao premir F1.

  2. Digite e selecione Azure Functions: Create New Project.

    Screenshot of Visual Studio Code creating a new function app.

  3. Selecione a raiz do repositório como o local para o novo projeto.

  4. Quando solicitado, introduza os seguintes valores.

    Nome Valor
    Idioma TypeScript
    Selecione um modelo de programação TypeScript Modelo V4
    Template Acionador HTTP
    Nome getFérias

O aplicativo Functions agora foi criado para servir os pontos de extremidade da API do aplicativo. Na próxima unidade, você cria as funções que listam, adicionam, atualizam e excluem férias.

Nota

Você criou o aplicativo Funções em uma pasta de funções , que o separa do aplicativo Angular. Você pode decidir como estruturar seus aplicativos, mas, para fins de aprendizagem, é útil ver ambos os aplicativos em um só lugar.

Copiar e refatorar o código do manipulador de rotas

Toda a lógica do Node.js Express que retorna dados está na pasta servidor/serviços . Você pode copiar esse código do aplicativo Node.js Express para o aplicativo Functions e, em seguida, fazer uma refatoração secundária para fazer com que o código funcione com Functions em vez de Node.js Express.

A tabela a seguir lista as principais diferenças entre o aplicativo Node.js Express e o aplicativo Functions:

Componente Express de Node.js Funções
Pacote npm importado para servir o aplicativo express @azure/functions
Objetos de solicitação e resposta req e res request e context

Primeiro, refatore o código para importar o pacote npm apropriado. Em seguida, refatore para lidar com as diferenças entre como Express e Functions passam os objetos de solicitação e resposta.

Copiar o código existente do projeto Express

No Visual Studio Code, copie as seguintes subpastas da pasta do servidor no aplicativo Express e cole-as na pasta functions/ :

  • dados
  • de BI
  • services

Você não precisa copiar a pasta de rotas porque criará novas funções para cada rota no aplicativo Azure Functions.

Continue para a próxima unidade para criar as funções e refatorar os pontos de extremidade e rotas.