50% OFF Plus
--:--:--
¡Obtener!

Validación de datos

Código
Avanzado
Curso de null
30 min
200 XP
Actualizado: 06/02/2025

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Crea un middleware para validar nombres y edades en una API.

Reto de programación: Middleware de validación de datos

Objetivo:

Implementar un middleware en Node.js que valide campos en las solicitudes de una API.

Requisitos del ejercicio:

Contexto: Debes crear un middleware para validar que las solicitudes POST a la ruta /usuarios contengan los campos nombre y edad. El campo nombre debe ser una cadena no vacía, y edad debe ser un número mayor o igual a 18.

Detalles de implementación:

  • El middleware debe regresar una respuesta con código de estado 400 y un mensaje de error si alguno de los campos no cumple con los criterios mencionados.
  • Si los datos son válidos, el middleware debe pasar el control a la siguiente función en la fila de middlewares o manejar la solicitud exitosamente.

Sin usar frameworks: Debes realizar la implementación solo con el módulo http de Node.js.

Validación personalizada opcional: No es obligatorio, pero puedes agregar validaciones adicionales (como asegurar que nombre no contenga caracteres numéricos).

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

Salida esperada:

  • Para datos válidos: Responde con un código de estado 201 y un mensaje JSON “Usuario creado exitosamente.”
{ "mensaje": "Usuario creado exitosamente." }
  • Para datos inválidos: Devuelve un código de estado 400 con un mensaje de error detallado en JSON que indique qué campo falló y por qué.
{ "error": "El campo 'edad' debe ser un número mayor o igual a 18." }

Ejemplo de solicitud y respuesta:

Solicitud válida:
POST /usuarios

{
  "nombre": "Juan",
  "edad": 20
}
  • Respuesta esperada: Código 201

Solicitud con edad inválida:
POST /usuarios

{
  "nombre": "Ana",
  "edad": 17
}
  • Respuesta esperada: Código 400

Solución al ejercicio de programación en

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en

⭐⭐⭐⭐⭐
4.9/5 valoración