Construir una API RESTful de gestión de usuarios con Node.js

JavaScriptBeginner
Practicar Ahora

Introducción

En este proyecto, aprenderás a desarrollar una API RESTful utilizando Node.js y Express.js. El proyecto implica crear un sistema simple de gestión de usuarios, donde puedes recuperar una lista de usuarios.

👀 Vista previa

curl http://localhost:8080/list
## Salida:
## {"userlist":[{"id":"1","username":"zhangsan","password":"123456"},{"id":"2","username":"lilei","password":"456"},{"id":"3","username":"hanmeimei","password":"123"}]}

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo configurar un proyecto de Node.js e instalar dependencias
  • Cómo crear un servidor básico de Express.js
  • Cómo implementar un punto final GET para recuperar una lista de usuarios de un archivo JSON
  • Cómo probar la API utilizando cURL

🏆 Logros

Después de completar este proyecto, podrás:

  • Comprender los conceptos básicos del desarrollo de API RESTful
  • Configurar un proyecto de Node.js e instalar las dependencias necesarias
  • Crear un servidor simple de Express.js
  • Implementar un punto final GET para recuperar datos de un archivo JSON
  • Probar la API utilizando cURL

Configurar el proyecto

En este paso, configurarás el proyecto e instalarás las dependencias necesarias.

El código inicial para esta pregunta ya ha sido proporcionado. Abre el entorno de codificación y la estructura de directorios es la siguiente:

├── index.js
├── users.json
├── package.json
├── package-lock.json

A continuación, descarga las dependencias utilizando el comando npm install en la terminal, espera a que las dependencias terminen de descargarse y luego inicia el proyecto utilizando el comando npm run dev.

✨ Revisar Solución y Practicar

Implementar el punto final GET /list

En este paso, implementarás el punto final GET /list para mostrar la lista de usuarios.

  1. Abre el archivo index.js en el directorio del proyecto.
  2. Localiza la sección TODO en el archivo y agrega el siguiente código para implementar el punto final GET /list:
//TODO
app.get("/list", function (req, res) {
  fs.readFile(
    path.resolve(__dirname, "./users.json"),
    "utf8",
    function (err, data) {
      data = JSON.parse(data);
      res.json(data);
    }
  );
});

Este código lee el archivo users.json, analiza los datos JSON y los envía como respuesta.

  1. Guarda el archivo index.js.
✨ Revisar Solución y Practicar

Probar el punto final GET /list

En este paso, probarás el punto final GET /list para asegurarte de que funcione correctamente.

  1. Abre una nueva terminal en el entorno de laboratorio.
  2. Utiliza el comando curl para enviar una solicitud GET al punto final /list:
curl http://localhost:8080/list

Deberías ver la siguiente salida, que es los datos JSON del archivo users.json:

{"userlist":[{"id":"1","username":"zhangsan","password":"123456"},{"id":"2","username":"lilei","password":"456"},{"id":"3","username":"hanmeimei","password":"123"}]}

Si ves esta salida, el punto final GET /list está funcionando correctamente.

¡Felicidades! Has completado el proyecto e implementado el punto final GET /list para mostrar la lista de usuarios.

✨ Revisar Solución y Practicar

Resumen

¡Felicidades! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.