前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Laravel踩坑日记之中间件配置

Laravel踩坑日记之中间件配置

作者头像
Meng小羽
发布2019-12-23 17:24:24
6930
发布2019-12-23 17:24:24
举报
文章被收录于专栏:Debug客栈Debug客栈

路由书写方式

设置文件位置:项目地址/routes/web.php

代码语言:javascript
复制
//通过路由组进行提取 提取公共命名空间 公共的前缀 中间件
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工具进行创建。

代码语言:javascript
复制
php artisan make:middleware adminLogin

注册好中间件

在代码中添加一行注册中间件语句

修改文件位置:项目地址/app/Http/Kernel.php

代码语言:javascript
复制
'adminLogin' => \App\Http\Middleware\adminLogin::class,

增加到指定位置后:

代码语言:javascript
复制
 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,
        'adminLogin' => \App\Http\Middleware\adminLogin::class,
    ];

打开中间件进行编辑规则

代码语言:javascript
复制
/*
 * 路由组 -- 后台
 */
//完成用户的登录路由
Route::get('admin/login', "Admin\LoginController@index");
//登陆的操作
Route::get('admin/check', "Admin\LoginController@check");
代码语言:javascript
复制
public function handle($request, Closure $next)
    {
        //判断session中是否存在用户数据
        //如果存在访问后台  不存在请用户登录
        if(session('adminUserInfo')){
            return $next($request);
        }else{
            //用户进入登陆界面
            return redirect('admin/login');
        }
    }

本文链接:https://cloud.tencent.com/developer/article/1558213

本文采用CC BY-NC-SA 3.0 Unported协议进行许可,转载请保留此文章链接

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 路由书写方式
  • 新建中间件
  • 注册好中间件
  • 打开中间件进行编辑规则
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档