0

Segue um exemplo bem simples de um Servidor Node Express. Os comentários descrevem o que cada linha faz no código, sendo assim temos uma base para qualquer servidor Javascript.

Vamos iniciar nosso projeto com um Servidor Node Express, instalado o Node. Por outro lado, caso não tenha, vou deixar o link para uma versão portátil do Node. É uma instalação super simples Além disso, essa verão portátil é a mesma que estarei usando nesse tutorial.

Crie uma pasta de nome node-express por fim, dentro dela execute o comando npm init -y

É gerado um arquivo package.json , aqui estão todas as dependências ou módulos do projeto. Depois execute o comando npm install express

Abaixo segue um exemplo básico de um Servidor Express. Crie um arquivo de nome server.js

Copie e cole dentro do arquivo server.js as linhas abaixo. Cada linha está comentada e explica o que faz cada comando.

// Chama o modulo express
const express = require('express')
// Guarda express na variavel app
const app = express()
// Cria a varial port com o valor 3000
const port = 3000

// Cria uma rota na raiz do site / e envia a mensagem Ola Mundo!
app.get('/', (req, res) => {
  res.send('Ola Mundo')
})

// Cria o servidor express da um console.log informando o numero da porta
app.listen(port, () => {
  console.log(`Servidor ativo em http://localhost:${port}`)
})

Temos o nosso servidor pronto para rodar. O que ele faz? Simplesmente mantem a escuta na porta 3000 e envia uma mensagem para a tela do navegador com a mensagem “Ola Mundo”.

Vamos executar o servidor no console do node com o comando: node server.js

Abra o navegador em http://localhost:3000

RECEBENDO DADOS EM URL PARAMS

Para ficar mais interessante, agora em vez de imprimir “Ola Mundo” na tela do navegador. Vamos receber informações da URL e mostrar no navegador. Isto é útil quando fizermos uma pesquisa no banco de dados e precisamos das informações que o usuário digitou.

Troque res.send(“Ola Mundo”) por res.send(req.query)

// Recebe os parametros da url e imprime no navegador
app.get("/", (req, res) => {
  // req.query e aonde sao guardados os dados da url
  res.send(req.query);
});

Agora é só reiniciar o servidor dando um CTR-C  e node server.js

Abrir o navegador com a URL http://localhost:3000/?nome=miguel

E o resultado é o seguinte:

O que aconteceu? Abrimos a pagina raiz “/” do servidor http://localhost:3000 e posteriormente o usuário envia a variável nome com uma STRING miguel. Dessa forma, se mudarmos a variável as informações são atualizadas em tempo real no navegador.

USANDO NODEMON

Além disso, existe um modulo que evita a necessidade de ficar parando e executando o servidor sempre que for feita alguma alteração. Por isso vamos fazer CTR-C parando nosso servidor node e executar npm install nodemon

Com o nodemon instalado, sempre que fizermos alguma alteração no código os novos dados serão automaticamente atualizados. Executando nodemon server.js

USANDO POST METHOD PARA RECEBIMENTO DE DADOS

Outra forma de receber informações no servidor node express é com o método POST. É necessário usar um programa chamado Postman. Desta forma, os dados serão enviados usando esse método. Então podemos testar nossa API enviando dados com o método POST sem um Front End.

Em seguida vamos preparar nosso servidor para receber esses dados. Copie e cole o trecho de código abaixo, app.use(express.json()) com esta instrução o express vai saber que estamos a usar JSON para passar as informações.  req.body recebe e guarda as variáveis nome e idade.

// Informa ao express que vamos usar formato json {}
// para envio das informações
app.use(express.json());


// Recebe os parametros pelo metodo POST
app.post("/post", (req, res) => {
  // Atribui as variaveis nome e idade que sao recebidas
  // pelo req.body
  const nome = req.body.nome;
  const idade = req.body.idade;

  console.log(`O nome e: ${nome} e idade: ${idade}`);
});

Abrindo agora o Postman que instalamos anteriormente, clique em Create a request.

Troque o tipo de request para POST, a pagina para http://localhost:3000/post , na barra Headers key=content-type value=application/json 

Na aba Body clique em raw , e insira { “nome”: “Miguel”, “idade”: 37 } clique em SEND.

Conseguimos ver o resultado no console de nosso servidor node express.

Leave a Reply