Menu
CoddyTech

O módulo http

Parte da seção Fundamentos de Express do Journey de Node.js da Coddy. Lição 2 de 23.

O Express faz um trabalho por você que não consegue ver. O próprio módulo node:http do Node, no qual o Express se baseia, mostra isso.

import http from 'node:http';

const server = http.createServer((req, res) => {
    if (req.url === '/repairs') {
        res.statusCode = 503;
        res.end('Repairs are closed today');
        return;
    }
    res.end('Welcome to the bike shop');
});

server.listen(3000);

O Node chama a função para cada requisição. Não há rotas: você mesmo compara req.url, o caminho solicitado. res.statusCode é o código de status, um número que indica como foi: 200 significa OK, 404 significa não encontrado. res.end envia o corpo e conclui a resposta, então defina o status antes disso.

challenge icon

Desafio

Fácil

Antes de continuar com Express, você vai escrever um servidor pequeno com o próprio módulo node:http do Node, para ver o trabalho que o Express faz por você.

  1. Em server.js, dentro da função passada para http.createServer, confira req.url. Quando for /, envie o texto Home.
  2. Para qualquer outro caminho, defina o código de status como 404 e envie o texto Not found. Defina o status antes de enviar. Depois que a resposta for encerrada, o status não poderá ser alterado.

Experimente: Pressione Executar e envie /. Você deverá ver Home com o status 200. Envie /nope e, em seguida, /recipes/today. Ambos deverão mostrar Not found com o status 404. Na lição 1, o Express enviou esse 404 para você; aqui, você mesmo vai escrevê-lo.

Experimente você mesmo

import http from 'node:http';

const server = http.createServer((req, res) => {
    // Responda a / com Home e a todos os outros caminhos com 404 Not found.
    res.end('Hello from Node');
});

server.listen(3000, () => {
    console.log('Listening on port 3000');
});
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos de Express

Pratique por conta própria: Playground de Express