0Pricing
Sveltejs Academy · Leçon

Routes protégées dans le hook handle()

Redirigez les utilisateurs non authentifiés depuis les routes protégées à l’intérieur du hook handle.

Routes protégées dans le hook handle() est une leçon Sveltejs Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Sveltejs Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Sveltejs Academy comprend 4 leçons au total.

Protéger à la périphérie

Centralisez la protection des routes dans la fonction d’interception handle afin de disposer d’une source de vérité unique.

Vérifier les variables locales

Si vous définissez event.locals.user dans handle, vérifiez-le pour les chemins protégés.

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

Accès fondé sur les rôles

Vérifiez les rôles des utilisateurs pour contrôler l’accès aux sections.

if (event.url.pathname.startsWith("/admin") && event.locals.user?.role !== "admin") redirect(...);

Secours de la fonction de chargement

Dans le chargement de +page.server.js, déclenchez une redirection si locals.user est absent, pour renforcer la sécurité.

Routes publiques et privées

Utilisez un comparateur de chemins ou des limites de mise en page pour les différencier.

Éviter les vérifications page par page

Les vérifications centralisées évitent d’oublier des routes, ce qui pourrait exposer des données sensibles.

URL de retour

Encodez l’URL d’origine comme paramètre de requête afin que les utilisateurs y soient redirigés après leur connexion.

redirect(303, `/login?next=${encodeURIComponent(event.url.pathname)}`);

Routes d’API

Protégez les points de terminaison d’API (+server.js) avec la même logique de fonction d’interception.

Performances

Les vérifications d’authentification doivent être rapides. Mettez en cache les données utilisateur pour chaque requête via les variables locales.

Cohérence SSR

L’authentification centralisée garantit un comportement cohérent pour les requêtes rendues par le serveur et celles parcourues côté client.

Tests

Une authentification fondée sur une fonction d’interception est plus facile à tester isolément que des vérifications dispersées page par page.

Vérification rapide

Où devez-vous protéger les routes ?

Récapitulatif

Centralisez la protection des routes dans handle, en vérifiant locals.user et en redirigeant les requêtes non autorisées.

Questions Fréquemment Posées

La leçon « Routes protégées dans le hook handle() » est-elle gratuite ?

Oui — le texte complet de « Routes protégées dans le hook handle() » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Sveltejs Academy, passe à CoddyKit PRO. Le cours Sveltejs Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Routes protégées dans le hook handle() » ?

Redirigez les utilisateurs non authentifiés depuis les routes protégées à l’intérieur du hook handle. Tu pratiques Sveltejs Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Sveltejs Academy ?

Aucune expérience préalable n'est requise. Sveltejs Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Routes protégées dans le hook handle() » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Sveltejs Academy ?

Oui. Chaque leçon Sveltejs Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Sessions fondées sur les cookies
  2. JWT dans des cookies HTTP uniquement
  3. Routes protégées dans le hook handle()
  4. OAuth avec SvelteKit et Lucia Auth
← Retour à Sveltejs Academy