这篇文章主要介绍了关于laravel中间件的使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
laravel中间件的使用:创建中间件命令php artisan make:middleware checklogin
执行完以上命令会在app/http/middleware目录下创建一个新的中间件类checklogin.php。创建完以后还需要注册中间件在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, ];
可以在刚创建的中间件里写验证如下:<?phpnamespace 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('_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就可以了。
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注!
相关推荐:
laravel 修改默认日志文件名称和位置
用laravel dingo api插件库创建api的方法
以上就是laravel中间件的使用的详细内容。