Laravel踩坑日记之中间件配置
- 2019 年 12 月 23 日
- 筆記
路由书写方式
设置文件位置:[项目地址]/routes/web.php
//通过路由组进行提取 提取公共命名空间 公共的前缀 中间件 Route::group(['namespace'=>'Admin', 'prefix'=>'admin', 'middleware'=>'adminLogin'], function(){ //首页路由设置 Route::get('/', 'IndexController@index'); //用户管理模块路由设置 Route::get('user', 'UserController@index'); Route::get('user/create', 'UserController@create'); Route::get('user/{user}/edit', 'UserController@edit'); Route::post('user/store', 'UserController@store'); Route::put('user/update', 'UserController@update'); Route::get('user/destory', 'UserController@destory'); Route::get('goods', 'GoodsController@index'); });
新建中间件
使用php artisan工具进行创建。
php artisan make:middleware adminLogin
注册好中间件
在代码中添加一行注册中间件语句
修改文件位置:[项目地址]/app/Http/Kernel.php
'adminLogin' => AppHttpMiddlewareadminLogin::class,
增加到指定位置后:
protected $routeMiddleware = [ 'auth' => IlluminateAuthMiddlewareAuthenticate::class, 'auth.basic' => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class, 'bindings' => IlluminateRoutingMiddlewareSubstituteBindings::class, 'can' => IlluminateAuthMiddlewareAuthorize::class, 'guest' => AppHttpMiddlewareRedirectIfAuthenticated::class, 'throttle' => IlluminateRoutingMiddlewareThrottleRequests::class, 'adminLogin' => AppHttpMiddlewareadminLogin::class, ];
打开中间件进行编辑规则
/* * 路由组 -- 后台 */ //完成用户的登录路由 Route::get('admin/login', "AdminLoginController@index"); //登陆的操作 Route::get('admin/check', "AdminLoginController@check");
public function handle($request, Closure $next) { //判断session中是否存在用户数据 //如果存在访问后台 不存在请用户登录 if(session('adminUserInfo')){ return $next($request); }else{ //用户进入登陆界面 return redirect('admin/login'); } }
本文链接:https://www.debuginn.cn/2299.html
本文采用CC BY-NC-SA 3.0 Unported协议进行许可,转载请保留此文章链接