Nessa postagem, irei mostrar a vocês como é simples criar um servidor HTTP, mais conhecido como servidor Web, utilizando Node.js.
Caso tenha alguma dúvida sobre o que é Node.js, dê uma lida em minha postagem onde explico de forma simplificada clicando aqui.
Criando um servidor HTTP
Pressupondo que já tenha o Node.js instalado em sua máquina. Vamos criar um arquivo chamado app.js com a seguinte estrutura:
Toda vez que o servidor HTTP recebe uma requisição, a função de callback passada para o método createServer é executada.
O método listen é o responsável pela parametrização de endereço e porta, escutando os mesmos, possibilitando a execução do servidor.
Perfeito. Todos as linhas necessárias para a criação de nosso servidor estão prontas. Agora só precisamos iniciar o servidor.
Pelo terminal, vá até a pasta onde se encontra o arquivo app.js e execute o seguinte comando: node app.js.
A saída no terminal será:
Servidor rodando em localhost:3000
Parar o servidor com: ctrl + c
A partir de agora, seu servidor Web está rodando! Se tudo estiver correto, ao acessar http://localhost:3000 pelo navegador e terá o mesmo retorno da linha 7: Retorno da requisição.
Servidor configurado e funcionando! Porém, qualquer caminho vai dar o mesmo retorno. Como iríamos configurar diversas rotas com essa estrutura atual?
Calma, meu caro leitor! Irei lhe mostrar uma forma simples e funcional para isso. Vamos lá!
Trabalhando com rotas
Sabendo como funciona o fluxo de requisições no servidor, podemos adicionar poucas linhas ao nosso código atual para termos um controle de rotas simples e funcional:
Pronto, agora temos um controle de rotas funcional. Se cancelar a execução atual do servidor com ctrl+c e rodar novamente o comando node app.js poderá testar as rotas.
Viu só como é simples?! Com poucas linhas temos uma estrutura capaz de receber requisições e dar um retorno baseado em rotas dinâmicas. Brilhante, não?!
Apesar de funcional, essa estrutura é difícil de se manter. Por diversos motivos a comunidade de JavaScript começou a criar frameworks (novidade?!) para cuidar das rotas.
A partir deste ponto, podemos construir diversas outras formas de organização e tratamento dos retornos. Deixo essa tarefa com vocês.
Obrigado e até mais!
Se gostou do meu texto, me acompanhe que em breve estarei trazendo novidades.
Quer saber mais sobre o assunto ou tem alguma dúvida? Deixe um comentário. Ah, estou aberto a críticas também.
Abraço!