Menu
CoddyTech

El módulo http

Parte de la sección Conceptos básicos de Express del Journey de Node.js de Coddy. Lección 2 de 23.

Express hace por ti un trabajo que no puedes ver. Lo muestra el propio módulo node:http de Node, sobre el que está construido Express.

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);

Node llama a la función para cada solicitud. No hay rutas: tú comparas req.url, la ruta solicitada. res.statusCode es el código de estado, un número que indica cómo fue: 200 significa que todo está bien, 404 significa que no se encontró. res.end envía el cuerpo y finaliza la respuesta, así que establece el estado antes de llamarlo.

challenge icon

Desafío

Fácil

Antes de seguir con Express, escribirás un pequeño servidor con el módulo node:http propio de Node para ver el trabajo que Express hace por ti.

  1. En server.js, dentro de la función que se pasa a http.createServer, consulta req.url. Cuando sea /, envía el texto Home.
  2. Para cualquier otra ruta, establece el código de estado en 404 y envía el texto Not found. Establece el estado antes de enviar la respuesta. Una vez que la respuesta haya finalizado, su estado no puede cambiar.

Pruébalo: Pulsa «Ejecutar» y envía /. Deberías ver Home con el estado 200. Envía /nope y después /recipes/today. En ambos casos debería aparecer Not found con el estado 404. En la lección 1, Express envió este 404 por ti; aquí lo escribirás tú.

Pruébalo tú mismo

import http from 'node:http';

const server = http.createServer((req, res) => {
    // Responde a / con Home y a cualquier otra ruta con 404 Not found.
    res.end('Hello from Node');
});

server.listen(3000, () => {
    console.log('Listening on port 3000');
});
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Conceptos básicos de Express

Practica por tu cuenta: Playground de Express