0Pricing
Sveltejs Academy · Leçon

Limiter le débit avec des hooks

Implémentez une limitation du débit des requêtes dans le hook handle() pour protéger les routes d’API.

Limiter le débit avec des hooks est une leçon Sveltejs Academy gratuite sur CoddyKit. Ceci est la leçon 4 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.

Pourquoi limiter le débit

Protégez les API contre les abus : tentatives de connexion par force brute, extraction automatisée de données et surcharge accidentelle.

Implémenter dans handle

Suivez les requêtes par adresse IP en mémoire ou dans Redis, et rejetez-les lorsque la limite est dépassée.

const counts = new Map();
export async function handle({ event, resolve }) {
  const ip = event.getClientAddress();
  const n = (counts.get(ip) || 0) + 1;
  counts.set(ip, n);
  if (n > 100) return new Response("Too many", { status: 429 });
  return resolve(event);
}

Fenêtre glissante

Utilisez un algorithme à fenêtre glissante pour appliquer une limitation de débit équitable.

Avec Redis

Pour les déploiements à plusieurs instances, stockez les compteurs dans Redis ou dans un stockage partagé similaire.

Limites par route

Appliquez des limites différentes selon les routes, par exemple une limite plus stricte sur /login.

Statut 429

Renvoyez le statut HTTP 429 avec un en-tête Retry-After afin que les clients sachent quand réessayer.

Indications dans les en-têtes

Définissez les en-têtes X-RateLimit-* pour informer les clients de leur quota.

Limites par utilisateur

Pour les utilisateurs authentifiés, associez la limite à l’ID de l’utilisateur afin de garantir l’équité.

Bibliothèques

Utilisez des bibliothèques existantes comme sveltekit-rate-limiter au lieu de réinventer la solution.

Journalisation

Consignez les requêtes limitées afin de détecter les attaques et d’ajuster les limites.

Couche CDN

Utilisez Cloudflare ou un service similaire pour appliquer des limites de débit de base à la périphérie, avant que les requêtes n’atteignent votre application.

Vérification rapide

Quel code de statut renvoyez-vous lorsque la limite de débit est dépassée ?

Récapitulatif

Implémentez la limitation de débit dans le hook handle. Utilisez Redis pour les installations à plusieurs instances et renvoyez 429 avec Retry-After.

Questions Fréquemment Posées

La leçon « Limiter le débit avec des hooks » est-elle gratuite ?

Oui — le texte complet de « Limiter le débit avec des hooks » 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 « Limiter le débit avec des hooks » ?

Implémentez une limitation du débit des requêtes dans le hook handle() pour protéger les routes d’API. 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 4 sur 4.

Combien de temps prend la leçon « Limiter le débit avec des hooks » ?

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. Protection CSRF dans les actions de formulaire
  2. Prévention des XSS dans {#html}
  3. Variables d’environnement : $env/static et $env/dynamic
  4. Limiter le débit avec des hooks
← Retour à Sveltejs Academy