Saltar al contenido

Lección 7 de 16 · Lectura y práctica

Server Actions: mutations sin API Routes

Server Actions: mutations sin API Routes Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el concepto, despues.

Del concepto a la práctica

Taller de esta lección

Una mutación debe validar en el servidor aunque el formulario ya limite la entrada. La interfaz puede enviar nombre, pero la acción debe comprobar tipo, longitud y autorización antes de cambiar datos. Así se separa la comodidad del formulario de la confianza en la entrada.

Ejemplo resuelto

ts
'use server';
export async function renombrar(formData: FormData) {
  const entrada = formData.get('nombre');
  if (typeof entrada !== 'string') return { ok: false, error: 'Nombre inválido' };
  const nombre = entrada.trim();
  const autorizado = true; // sesión ficticia del aula
  if (!autorizado || nombre.length < 3 || nombre.length > 80) return { ok: false, error: 'Entrada rechazada' };
  return { ok: true, nombre };
}

La acción no persiste todavía: primero devuelve un resultado verificable.

El literal autorizado = true es una simulación de aula, no autenticación. Una aplicación real recupera una sesión confiable en el servidor y comprueba el permiso sobre el producto en cada acción. Para visualizar este resultado devuelto, conecta la función mediante useActionState en un componente cliente con la firma (estadoAnterior, formData); un simple <form action={renombrar}> no muestra automáticamente {ok,error}.

Pruébalo

  1. Envía el nombre Tinta azul.

  2. Repite con una cadena vacía.

  3. Cambia la autorización ficticia a false.

  4. Registra la respuesta de cada caso.

Comprueba tu resultado

Error frecuente: confiar solo en required del formulario. Corrección: repetir validación y autorización en la acción.

Ejercicio: prueba AB, Tinta azul y autorización falsa; el primero debe rechazarse por longitud, el segundo aceptarse y el tercero rechazarse aunque el nombre sea válido.

Capas de acceso, actualización, copias y respuesta a incidentes alrededor de un sistema.
CursaloMapa de práctica
La seguridad necesita varias capas

El control de acceso, las actualizaciones y las copias de seguridad cubren riesgos distintos. Una alerta necesita un procedimiento de respuesta para contener y recuperar el servicio. Varias capas reducen la exposición, pero ninguna garantiza seguridad absoluta.

Ver la infografía en tamaño completo ↗
Fuentes para profundizar

Server Actions: mutations sin API Routes

Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el concepto, despues aplicalo en una situacion concreta y finalmente deja evidencia de lo que aprendiste.

Objetivo practico

Al terminar, deberias poder explicar el tema con tus palabras, reconocer cuando usarlo y construir una version simple que sirva como base para un proyecto real.

Pasos recomendados

  1. Lee el concepto y escribi una definicion breve.
  2. Identifica un caso de uso laboral donde aparezca este problema.
  3. Construye un ejemplo pequeno y documenta las decisiones.
  4. Compara tu resultado con el checklist de la leccion.

Sigue con Desarrollo Web Full Stack con Next.js

Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.

Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.

01 / ELEGIR UNA RUTA

El próximo paso

Aprende IA mientras construyes algo que sí necesitas.

Empieza por el curso inicial o explora el catálogo para encontrar una práctica alineada con tu trabajo.