Rutas protegidas en el hook handle()
Redirija a los usuarios no autenticados desde las rutas protegidas dentro del hook handle
Rutas protegidas en el hook handle() es una lección gratuita de Sveltejs Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Sveltejs Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Sveltejs Academy incluye 4 lecciones en total.
Protección en Edge
Centralice la protección de rutas en el hook handle para contar con una única fuente de verdad.
Compruebe locals
Si establece event.locals.user en handle, compruébelo para las rutas protegidas.
export async function handle({ event, resolve }) {
event.locals.user = await getUser(event);
if (event.url.pathname.startsWith("/admin") && !event.locals.user) {
return new Response("Unauthorized", { status: 302, headers: { Location: "/login" } });
}
return resolve(event);
}Control de acceso basado en roles
Compruebe los roles de los usuarios para controlar el acceso a las secciones.
if (event.url.pathname.startsWith("/admin") && event.locals.user?.role !== "admin") redirect(...);Respaldo en la función load
Dentro de la función load de +page.server.js, lance un redirect si falta locals.user, como medida de seguridad adicional.
Rutas públicas y privadas
Utilice un comparador de rutas o límites de layout para diferenciarlas.
Evite las comprobaciones por página
Las comprobaciones centralizadas evitan omitir rutas que podrían exponer datos confidenciales.
URL de retorno
Codifique la URL original como un parámetro de consulta para que los usuarios regresen después de iniciar sesión.
redirect(303, `/login?next=${encodeURIComponent(event.url.pathname)}`);Rutas de API
Proteja los endpoints de API (+server.js) con la misma lógica del hook.
Rendimiento
Las comprobaciones de autenticación deben ser rápidas. Almacene en caché los datos del usuario por solicitud mediante locals.
Coherencia del SSR
La autenticación centralizada garantiza un comportamiento coherente en las solicitudes renderizadas en el servidor y en las navegaciones iniciadas en el cliente.
Pruebas
La autenticación basada en hooks es más fácil de probar de forma aislada que las comprobaciones dispersas por las páginas.
Comprobación rápida
¿Dónde debe realizar la protección de rutas?
Resumen
Centralice la protección de rutas en handle, comprobando locals.user y redirigiendo las solicitudes no autorizadas.
Aprende HTML con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 41
- Lecciones
- 163
Preguntas frecuentes
¿La lección «Rutas protegidas en el hook handle()» es gratis?
Sí — el texto completo de «Rutas protegidas en el hook handle()» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Sveltejs Academy, actualiza a CoddyKit PRO. El curso de Sveltejs Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Rutas protegidas en el hook handle()»?
Redirija a los usuarios no autenticados desde las rutas protegidas dentro del hook handle Practicas Sveltejs Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Sveltejs Academy?
No se requiere experiencia previa. Sveltejs Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Rutas protegidas en el hook handle()»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Sveltejs Academy?
Sí. Cada lección de Sveltejs Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Sesiones basadas en cookies
- JWT en cookies HTTP-only
- Rutas protegidas en el hook handle()
- OAuth con SvelteKit y Lucia Auth