Laravelミドルウェアの使用

不言
リリース: 2023-04-02 14:48:02
オリジナル
1906 人が閲覧しました

この記事では、参考価値のあるlaravelミドルウェアの使い方を中心に紹介していますので、皆さんにも共有しておきますので、困っている友達は参考にしてください

laravelミドルウェアの使い方:

ミドルウェアの作成コマンド
php artisan make:middleware CheckLogin
ログイン後にコピー
上記のコマンドを実行すると、新しいミドルウェア クラス CheckLogin.php が app/Http/Middleware ディレクトリに作成されます。
作成後、app/Http/Kernel.php にミドルウェアを登録する必要があります:
 protected $routeMiddleware = [
        'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
        'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
        'can' => \Illuminate\Auth\Middleware\Authorize::class,
        'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
        'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
        //这就是新注册的中间件
        'checklogin' => \App\Http\Middleware\CheckLogin::class,    ];
ログイン後にコピー
次のように、新しく作成したミドルウェアに検証を記述することができます:
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Session;
class CheckLogin{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $userid = Session::get(&#39;_userid&#39;);        
        $login_sts = Session::get(&#39;_login_sts&#39;);        
        if (empty($userid) || empty($login_sts)){            
        return response()->view(&#39;admin/login&#39;);
        }        
        return $next($request);
    }
}
ログイン後にコピー
次のステップは、ミドルウェア機能の使用方法です
Route::group([&#39;namespace&#39;=>&#39;Admin&#39;,&#39;middleware&#39;=>&#39;checklogin&#39;],function (){    
Route::get(&#39;admins&#39;,&#39;IndexController@index&#39;);    
Route::get(&#39;logout&#39;,&#39;IndexController@logout&#39;);});
ログイン後にコピー

ここではルーティング グループが直接使用されます。ルーティングがグループに配置されている限り、この検証が行われます。['namespace'=> ;'Admin'] は Namespace, ['middleware'=>'checklogin'] これはミドルウェアの検証ですが、以前登録したときの登録名は checklogin だったので、ミドルウェアの直後に checklogin と書くだけです。

上記がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

Laravel デフォルトのログ ファイル名と場所を変更する

laravel dingo API プラグイン ライブラリを使用するAPI メソッドを作成するには

#

以上がLaravelミドルウェアの使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート