Back-End

22 out, 2018

Node.js: utilizando Async Await com Express.js

Publicidade

Hoje eu irei demonstrar como podemos utilizar Async/Await em um projeto Node.js com Express.js.

O objetivo desse artigo não será abordar o que é Async e nem o porque de utilizar ele. Será algo rápido para mostrar como trabalhar com ele em um projeto Node com o framework Express.js.

Para pular a etapa de criação de um novo projeto, eu irei utilizar um que eu desenvolvi em um artigo anterior:

Caso você tenha interesse em clonar ele, segue o link no meu GitHub: node-express.

Para termos um cenário mais próximo do nosso dia a dia, fazer uma requisicão a uma URL externa. Existem muitos pacotes para isso, mas nesse artigo eu irei utilizar o pacote resquest.

Abra um terminal no seu computador e execute o comando abaixo:

npm install request --save-dev

O próximo passo será atualizar a nossa rota GET para que ela possa requisitar uma API externa. Para isso, abra o seu arquivo /src/controllers/personController.js e atualize ele com o trecho de código abaixo:

var request = require("request");

exports.get = async (req, res, next) => {
  console.log("chamando");
  await request("http://www.google.com", function(error, response, body) {
    res.json(body);
  });
};

Em seguida, execute o comando npm start no seu terminal. Esse comando executará o projeto no seguinte endereço:

Abra esse endereço no seu navegador. Caso tudo esteja OK, você receberá o resultado da imagem abaixo:

Resultado node com Async Await

Bem simples, né?

O objetivo desse artigo foi demonstrar como utilizar o Async/Await com Node e o Express.js. Espero que tenham gostado e até um próximo artigo, pessoal!