Maison développement back-end tutoriel php Que signifie Laravel Middleware `Throttle: API`?

Que signifie Laravel Middleware `Throttle: API`?

Apr 01, 2025 pm 01:54 PM
laravel 权限验证 laravel中间件

Explication détaillée de la fonction de limite de vitesse du middleware de Laravel

Dans le cadre de Laravel, le middleware joue un rôle important. Ils peuvent intercepter et traiter les demandes, implémenter des fonctions telles que la vérification de l'autorisation, la journalisation et la limite de vitesse. Cet article explorera l'utilisation du middleware de l'accélérateur à Laravel en profondeur, en particulier l'utilisation de «Throttle: API».

Le problème découle d'un code de configuration de middleware Laravel:

 'api' => [
    // \ laravel \ sanctum \ http \ middleware \ assurefrontDrequestSarestateful :: class,
    'Accélération: API',
    \ illuminer \ routing \ middleware \ substitutebindings :: class,
],
Copier après la connexion

Parmi eux, «Throttle: API» a suscité la question du questionneur. Tout le monde sait qu'il s'agit d'un middleware de limite de vitesse, mais la signification des paramètres de l'API n'est pas claire. La configuration de middleware de limite de vitesse commune est souvent de l'accélérateur: 60,1, ce qui signifie que 60 demandes sont autorisées par minute. Alors, que signifie exactement «gazon: api»?

La réponse réside dans la méthode de passage des paramètres du middleware de gaz. Le middleware de Laravel prend en charge le passage des paramètres, les paramètres commencent avec le côlon: et plusieurs paramètres sont séparés par des virgules. En tant que langage de type faible, l'utilisation flexible des types de paramètres et le nombre de paramètres rend les méthodes de configuration plus diverses.

Accélération: API signifie utilisant un Ratelimiter appelé API. Cela signifie que le système contrôle la fréquence de demande en fonction d'une règle de limiteur de taux appelé API. Le limiteur de taux doit être prédéfini dans la configuration de Laravel, qui détermine le nombre de demandes autorisées et la fenêtre temporelle.

Accélération: 60,1 signifie directement la règle de la limite de vitesse: 60 demandes par minute (1 minute, $ DecayMinutes = 1) sont autorisées ($ maxatTempts = 60).

Le fragment de code source du middleware de l'accélérateur est le suivant:

 / **
     * /Illumiminate/routing/middleware/throttlerequests.php
     * Gérer une demande entrante.
     *
     * @param \ illuminate \ http \ request $ request
     * @param \ fermeture $ suivant
     * @param int | string $ maxattempts
     * @param float | int $ DecayMinutes
     * @param String $ préfixe
     * @return \ symfony \ composant \ httpfoundation \ réponse
     * 
     * @throws \ illuminer \ http \ exceptions \ throttlerequestsexception
     * 
     * /
    Poignée de la fonction publique ($ demande, fermeture $ suivant, $ maxATTempts = 60, $ DecayMinutes = 1, $ prefix = '')
    {
        if (is_string ($ maxattempts)
            && func_num_args () === 3
            &&! is_null ($ limiter = $ this-> limiter-> limiter ($ maxAtTempts))) {
            retourner $ this-> handlerequestusingNamedLimiter ($ request, $ Next, $ maxatTempts, $ limiter);
        }
        
        // ....
     }
Copier après la connexion

Ce code montre comment le middleware gère différents formulaires de paramètres. Lorsque $ maxatTempts est une chaîne et que le nombre de paramètres est de 3 (c'est-à-dire que seul le nom est passé), le middleware tentera d'utiliser un Ratelimiter nommé $ MaxatTempts.

Grâce à l'analyse du code source et des méthodes de livraison des paramètres, nous pouvons clairement comprendre la signification de «l'accélérateur: API»: il ne spécifie pas directement les règles de limite de vitesse, mais se réfère à un limiteur de taux prédéfini appelé API. Cela permet aux développeurs de gérer plus de manière plus flexible les stratégies de limitation de vitesse pour différentes interfaces API.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1653
14
Tutoriel PHP
1251
29
Tutoriel C#
1224
24
Exemple d'introduction de Laravel Exemple d'introduction de Laravel Apr 18, 2025 pm 12:45 PM

Laravel est un cadre PHP pour la création facile des applications Web. Il fournit une gamme de fonctionnalités puissantes, notamment: Installation: Installez le Laravel CLI globalement avec Composer et créez des applications dans le répertoire du projet. Routage: définissez la relation entre l'URL et le gestionnaire dans Routes / web.php. Voir: Créez une vue dans les ressources / vues pour rendre l'interface de l'application. Intégration de la base de données: fournit une intégration prête à l'emploi avec des bases de données telles que MySQL et utilise la migration pour créer et modifier des tables. Modèle et contrôleur: le modèle représente l'entité de la base de données et le contrôleur traite les demandes HTTP.

Résoudre les problèmes de mise en cache dans Craft CMS: Utilisation du plug-in Wiejeben / Craft-Laravel-MIX Résoudre les problèmes de mise en cache dans Craft CMS: Utilisation du plug-in Wiejeben / Craft-Laravel-MIX Apr 18, 2025 am 09:24 AM

Lorsque vous développez des sites Web à l'aide de CRAFTCMS, vous rencontrez souvent des problèmes de mise en cache de fichiers de ressources, en particulier lorsque vous mettez fréquemment à mettre à jour les fichiers CSS et JavaScript, les anciennes versions des fichiers peuvent toujours être mises en cache par le navigateur, ce qui fait que les utilisateurs ne voient pas les derniers changements de temps. Ce problème affecte non seulement l'expérience utilisateur, mais augmente également la difficulté du développement et du débogage. Récemment, j'ai rencontré des problèmes similaires dans mon projet, et après une exploration, j'ai trouvé le plugin wiejeben / artist-laravel-mix, qui a parfaitement résolu mon problème de mise en cache.

Fonction de connexion de l'utilisateur de Laravel Fonction de connexion de l'utilisateur de Laravel Apr 18, 2025 pm 12:48 PM

Laravel fournit un cadre Auth complet pour implémenter les fonctions de connexion des utilisateurs, notamment: définir des modèles d'utilisateurs (modèle éloquent), créant des formulaires de connexion (moteur de modèle de lame), rédaction des contrôleurs de connexion (héritage de l'authentification \ loginContrôleur), vérifiant les demandes de connexion (Auth :: tentative) Redirection après la connexion de la connexion, la limitation de la sécurité). De plus, le cadre Auth fournit également des fonctions telles que la réinitialisation des mots de passe, l'enregistrement et la vérification des e-mails. Pour plus de détails, veuillez consulter la documentation de Laravel: https://laravel.com/doc

Méthode d'installation de Laravel Framework Méthode d'installation de Laravel Framework Apr 18, 2025 pm 12:54 PM

Résumé de l'article: Cet article fournit des instructions détaillées étape par étape pour guider les lecteurs sur la façon d'installer facilement le cadre Laravel. Laravel est un puissant cadre PHP qui accélère le processus de développement des applications Web. Ce didacticiel couvre le processus d'installation des exigences du système à la configuration des bases de données et à la configuration du routage. En suivant ces étapes, les lecteurs peuvent jeter rapidement et efficacement une base solide pour leur projet Laravel.

Laravel et le backend: alimentation logique d'application Web Laravel et le backend: alimentation logique d'application Web Apr 11, 2025 am 11:29 AM

Comment Laravel joue-t-il un rôle dans la logique backend? Il simplifie et améliore le développement backend par le biais de systèmes de routage, d'éloquente, d'authentification et d'autorisation, d'événements et d'auditeurs et d'optimisation des performances. 1. Le système de routage permet la définition de la structure d'URL et demande la logique de traitement. 2.Lao-éloquente simplifie l'interaction de la base de données. 3. Le système d'authentification et d'autorisation est pratique pour la gestion des utilisateurs. 4. L'événement et l'écoute implémentent la structure de code couplée de manière lâche. 5. L'optimisation des performances améliore l'efficacité de l'application par la mise en cache et la file d'attente.

Comment apprendre Laravel comment apprendre Laravel gratuitement Comment apprendre Laravel comment apprendre Laravel gratuitement Apr 18, 2025 pm 12:51 PM

Vous voulez apprendre le cadre de Laravel, mais ne souffrez pas de ressources ni de pression économique? Cet article vous fournit un apprentissage gratuit de Laravel, vous apprenant à utiliser des ressources telles que les plateformes en ligne, les documents et les forums communautaires pour jeter une base solide pour votre parcours de développement PHP de la mise en place de maîtrise.

Comment afficher le numéro de version de Laravel? Comment afficher le numéro de version de Laravel Comment afficher le numéro de version de Laravel? Comment afficher le numéro de version de Laravel Apr 18, 2025 pm 01:00 PM

Le Framework Laravel a des méthodes intégrées pour afficher facilement son numéro de version pour répondre aux différents besoins des développeurs. Cet article explorera ces méthodes, y compris l'utilisation de l'outil de ligne de commande Composer, l'accès à des fichiers .env ou l'obtention d'informations de version via le code PHP. Ces méthodes sont essentielles pour maintenir et gérer le versioning d'applications Laravel.

Quelles versions de Laravel y a-t-il? Comment choisir la version de Laravel pour les débutants Quelles versions de Laravel y a-t-il? Comment choisir la version de Laravel pour les débutants Apr 18, 2025 pm 01:03 PM

Dans le Guide de sélection de la version Laravel Framework pour les débutants, cet article plonge dans les différences de version de Laravel, conçues pour aider les débutants à faire des choix éclairés parmi de nombreuses versions. Nous nous concentrerons sur les principales caractéristiques de chaque version, comparerons leurs avantages et leurs inconvénients, et fournirons des conseils utiles pour aider les débutants à choisir la version la plus appropriée de Laravel en fonction de leur niveau de compétence et de leurs exigences de projet. Pour les débutants, le choix d'une version appropriée de Laravel est crucial car il peut avoir un impact significatif sur leur courbe d'apprentissage et leur expérience de développement globale.

See all articles