Maison  >  Article  >  cadre php  >  Guide d'utilisation du middleware ThinkPHP6 : implémentation du filtrage et de la vérification globaux

Guide d'utilisation du middleware ThinkPHP6 : implémentation du filtrage et de la vérification globaux

PHPz
PHPzoriginal
2023-08-26 12:16:452062parcourir

Guide dutilisation du middleware ThinkPHP6 : implémentation du filtrage et de la vérification globaux

Guide d'utilisation du middleware ThinkPHP6 : implémentation du filtrage et de la vérification globaux

Introduction :
Dans le développement d'applications Web, le middleware est un moyen technique très important et couramment utilisé. En tant que framework de développement PHP grand public, ThinkPHP6 fournit de puissantes fonctions middleware. Le middleware peut traiter les demandes et les réponses, mettre en œuvre des fonctions globales de filtrage et de vérification et contribuer à améliorer la sécurité et la stabilité des applications.

1. Qu'est-ce qu'un middleware ?
Le middleware est un lien entre le client et le serveur qui traite les requêtes et les réponses. Dans ThinkPHP6, le middleware est principalement utilisé pour intercepter et traiter les requêtes HTTP. Le middleware peut être appliqué à toutes les demandes de routes différentes ou globalement. Grâce au filtrage, à la vérification et au prétraitement des données de demande, un contrôle précis de la logique métier peut être obtenu.

2. Comment utiliser le middleware ThinkPHP6

  1. Créer un fichier middleware
    Créez un fichier middleware dans le répertoire app/middleware, tel que CheckAuth.php. Le fichier middleware doit contenir une méthode handle pour traiter les demandes et les réponses. Voici un exemple simple de middleware :
<?php
namespace appmiddleware;

class CheckAuth
{
    public function handle($request, Closure $next)
    {
        // 在处理请求之前的操作,例如身份验证
        
        // 将请求传递给下一个中间件或控制器
        $response = $next($request);
        
        // 在响应之后的操作,例如修改响应数据
        
        return $response;
    }
}
  1. Register Middleware
    Enregistrez le middleware dans le fichier app/middleware.php. Par exemple, l'enregistrement du middleware CheckAuth en tant que middleware global peut appliquer automatiquement le middleware à chaque requête :
use appmiddlewareCheckAuth;

return [
    CheckAuth::class,
];
  1. Configurer les règles du middleware
    Configurer les règles du middleware dans le fichier app/route/middleware.php afin de spécifier dans quelles routes le middleware devrait être appliqué. Voici un exemple simple :
use appmiddlewareCheckAuth;

return [
    'auth' => [
        'appindexcontrollerUser@index',
    ],
];
  1. Limitation de route du middleware
    Lors de l'utilisation d'un middleware dans le routage, vous pouvez utiliser une paire de crochets dans la définition de la route pour limiter la portée d'application du middleware :
Route::get('user/profile', '[auth]appindexcontrollerUser@profile');

Ce qui précède route , l’authentification middleware ne sera appliquée qu’à l’utilisateur/profil de route spécifique.

3. Exemple de middleware : vérification des paramètres de requête
Le middleware est très approprié pour vérifier les paramètres de requête. Voici un exemple simple de middleware de vérification des paramètres de requête :

<?php
namespace appmiddleware;

class CheckParams
{
    public function handle($request, Closure $next)
    {
        // 获取请求参数
        $params = $request->param();
        
        // 验证请求参数
        $validate = new     hinkValidate;
        $validate->rule([
            'name'  => 'require',
            'age' => 'integer|between:1,100',
        ]);
        if (!$validate->check($params)) {
            return json($validate->getError(), 400);
        }
        
        return $next($request);
    }
}

Le middleware ci-dessus vérifiera si les paramètres de nom et d'âge de la requête sont conformes aux règles et renverra un message d'erreur s'ils ne sont pas conformes.

4. Résumé
Le middleware est l'une des fonctions très importantes du framework ThinkPHP6, qui peut nous aider à répondre aux besoins globaux de filtrage et de vérification. En créant des fichiers middleware, en enregistrant les middlewares, en configurant les règles du middleware et en limitant la portée des applications du middleware dans les routes, nous pouvons facilement obtenir un contrôle précis sur les demandes et les réponses. Dans le même temps, nous avons également appris, grâce à un exemple simple, comment le middleware est appliqué à la vérification des paramètres de requête, nous aidant ainsi à améliorer la sécurité et la stabilité de l'application. J'espère que cet article pourra vous aider à comprendre et à utiliser le middleware ThinkPHP6.

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:
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