zoukankan      html  css  js  c++  java
  • laravel 中间件

    创建中间件命令
    
    php artisan make:middleware CheckLogin
    执行完以上命令会在app/Http/Middleware目录下创建一个新的中间件类CheckLogin.php。
    创建完以后还需要注册中间件在app/Http/Kernel.php中:
    protected $routeMiddleware = [
    
           'auth' => IlluminateAuthMiddlewareAuthenticate::class,
    
           'auth.basic' => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class,
    
           'bindings' => IlluminateRoutingMiddlewareSubstituteBindings::class,
    
           'can' => IlluminateAuthMiddlewareAuthorize::class,
    
           'guest' => AppHttpMiddlewareRedirectIfAuthenticated::class,
    
           'throttle' => IlluminateRoutingMiddlewareThrottleRequests::class,
    
           //这就是新注册的中间件
    
           'checklogin' => AppHttpMiddlewareCheckLogin::class,    ];
    可以在刚创建的中间件里写验证如下:
    <?php
    
    namespace AppHttpMiddleware;
    
    use Closure;
    
    use IlluminateSupportFacadesSession;
    
    class CheckLogin{
    
        /**
    
         * Handle an incoming request.
    
         *
    
         * @param  IlluminateHttpRequest  $request
    
         * @param  Closure  $next
    
         * @return mixed
    
         */
    
        public function handle($request, Closure $next)
    
        {
    
            $userid = Session::get('_userid');        
    
            $login_sts = Session::get('_login_sts');        
    
            if (empty($userid) || empty($login_sts)){            
    
            return response()->view('admin/login');
    
            }        
    
            return $next($request);
    
        }
    
    }
    接着就是怎么使用中间件功能了
    Route::group(['namespace'=>'Admin','middleware'=>'checklogin'],function (){    
    
    Route::get('admins','IndexController@index');    
    
    Route::get('logout','IndexController@logout');});
    这里直接使用的是路由群组,只要把路由放在群组之中都会经过这个验证,[‘namespace’=>’Admin’]是命名空间,[‘middleware’=>’checklogin’]这就是中间件验证,之前注册时注册名为checklogin,所以middleware后直接写checklogin就可以了
  • 相关阅读:
    生成组合算法
    今天复习C++的const,又学到了很多内容,总结一下[原创]
    文字和图片在一行,文字靠左,图片靠右(div)[转]
    联合查询
    排序查询
    分页查询 ★
    分组查询
    基础查询
    条件查询
    连接查询 (二)sql99语法
  • 原文地址:https://www.cnblogs.com/sgm4231/p/9828699.html
Copyright © 2011-2022 走看看